慢点博客 » ◎网站 相关 » ASP实现防盗链接

ASP实现防盗链接

ASP实现防盗链的原理:根据浏览者访问时间及下载资源产生临时文件供下载,下载后自动删除临时文件,从而防止盗链。

文件目录结构:建立一个专门存放下载资源的目录,如:DOWN,此目录最好放在网站根目录之外,在引用时用绝对地址来引用,当然也可以放在根目录之内。网站根目录中存放网页文件,并且建立一个TEMP目录,用于存放临时文件。

数据库文件:Soft.mdb其中Dsoft表存放有关下载资源文件的相关信息。所有字段都可以设为文本型,DZYID为资源的ID,DNAME为资源名称,DSTYL为资源类型(如:soft表示为下载资源,view可为在线观看的影音资源),DFILE为文件名称。

网页文件:其中Global.asa必须放在网站根目录下,浏览者启动任何一个页面都会先调用此文件,以产生一个session,其名称为getfile,内容为按时间产生临时文件名,global.asa具体内容如下:

          <Script Language="Vbscript" runat=server>
          Function Zh(s1)'根据日期时间产生随机字符串
          zh=int(now*1000000)
          End Function
          Sub Session_Onstart
          Session.TimeOut=30
          Session("GetFile")=Zh(Now())
          End   Sub
          </Script>

其中:Session.TimeOut=30定义了Session过期时间长度为30分钟。

       Conn.asp
         <%定义文件位置等
         jddz="E:\test\"   '网站根目录在服务器上的上一级目录的绝对地址
         bzwz= " http://soft.test.net " ' 网站域名地址
         db=Server.Mappath("SOFT.MDB") '定义数据库文件的位置
         Connstr = " Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & db & "; Persist Security Info=False;Jet OLEDB:Database Locking Mode=2;Jet OLEDB:Database Password=A"
         Set Conn=Server.CreateObject("ADODB.CONNECTION")
         Conn.Open Connstr
         %>

         Default.asp主文件
         <!-#INCLUDE file="conn.asp"->
         <%action=Request.Querystring("action")
         Select Case action
         Case   "dele"
         Call  Dele
         Case   "down"
         Call   Down
         Case  "view"
         Call  View
         Case  alse
         Call  Defa
         End  Slesct
         Function Zh(s1)'根据日期时间产生随机字符串
         zh= int(now*1000000)
         End  Function
         Sub  Defa()'下载文件显示页
         Reasponse.Write "不要尝试同时从本站下载多个文件<br>"
         Set  Rs=Server.CreateObjcet("Adodb.RecordSet")
         SQL="Select  * From Dsoft"
         Rs.Open SQL,Conn,3,2
         Do  While  Not  Rs.Eof
         Response.Write    "<a href='default.asp?id="&rs("Dzyid") & "&action=down'>"  & rs("Dname") & "</a></br>"
         Rs.Movenext
         Loop
         End Sub
         Sub Down  ( )'下载页,
         
         以下三句为防止从其他地址直接打开本页,如果检测到是盗链就转到错误页
        

0 Comments

发表留言


点击更换验证码

无觅关联推荐,快速提升流量