防盜連結ASP函式實現程式碼
簡單介紹下功能吧:使用了ASP的一個物件ServerVariables(伺服器環境變數),通過這個環境變數可以獲取到真正的下載地址再通過一些簡單的內建函式破壞其真正地址的完整性。達到欺騙下載軟體的功能。現附上原始碼提供大家學習。
複製程式碼 程式碼如下:
<% FunctIon DownloadFIle(StrFIle)
StrFIlename=StrFIle
er=True
r
Set S=teObJect("am")
=1
on Error Resume Next
Set Fso=teObJect("SystemObJect")
If Not Exists(StrFIleName) Then
From_Url=Cstr(erVarIables("HTTP_REFERER"))
Serv_Url=Cstr(erVarIables("SERVER_NAME"))
If MId(From_Url,8,len(Serv_Url)) <> Serv_Url Then
e "該檔案不存在或者已經刪除."
End If
rect erVarIables("HTTP_REFERER")
End If
FileExt=MId(StrFIlename,InStrRev(StrFIleName, ".")+1)
Select Case UCase(FIleExt)
Case "ASP", "ASA", "ASPX", "ASAX", "MDB", "PHP", "JSP", "SHTML", "HTML", "HTM", "TV", "DATA"
From_Url=Cstr(erVarIables("HTTP_REFERER"))
Serv_Url=Cstr(erVarIables("SERVER_NAME"))
If MId(From_Url,8,len(Serv_Url)) <> Serv_Url Then
e "該檔案不存在或者已經刪除."
End If
rect erVarIables("HTTP_REFERER")
End Select
Set F=Ile(StrFIlename)
IntFIlelength=
FromFIle(StrFIlename)
If Err Then
From_Url=Cstr(erVarIables("HTTP_REFERER"))
Serv_Url=Cstr(erVarIables("SERVER_NAME"))
If MId(From_Url,8,len(Serv_Url)) <> Serv_Url Then
e "該檔案資料不完整或許已損壞."
End If
rect erVarIables("HTTP_REFERER")
End If
Set Upload=teObJect("ad")
If Upload Is Nothing Then
eader "Content-DIsposItIon","attachment; FIlename="&
eader "Content-Length",IntFilelength
Set="UTF-8"
entType="application/x-download"
ryWrite
h
e
Set s=NothIng
Else
Binary StrFIlename,True,"application/x-download",False
End If
End FunctIon
%>
使用:<%call>。