手里的一个小工具下载站www.smalltool.cn建立没多久,中间加了一个极品飞车6硬盘版的下载,结果发现比其它内容的下载量大得多,居然到了14万次下载,而其它软件最多的才7000多次的下载量,很是纳闷!看网站统计IP还是每日只有五六百,检查了程序未发现下载次数统计程序有误,估计可能那个下载地址被别人给“引用”了,我倒不怕别人盗链我的把服务器拖死,反正那飞车那东东我就是链得多特的,只是想一个软件别人盗链了有那么大的下载量,倒是可以利用一下,如果把这14万的流量全引到主页上,一个软件带来的流量要不了多久就顶得整个站目前300天的流量。
于是在网上找资料研究ASP页面如何防盗链,找了许多个测试都没用,最后发现一段代码有用,做了下修改,刚好符合我的要求,比如我小工具站的下载链接文件名是download.asp,在这页里顶部加上以下代码即可:
<%
'盗链判断
Dim server_v1,server_v2
server_v1=Cstr(Request.ServerVariables("HTTP_REFERER"))
server_v2=Cstr(Request.ServerVariables("SERVER_NAME"))
If Mid(server_v1,8,len(server_v2))<>server_v2 Then
Response.Redirect("http://www.smalltool.cn")
'Response.Write "非法的盗链"
Response.End
End If
%>
怕有IE缓存,经过在两台服务器上打开IE测试通过,暂时未发现其它什么问题,很简单的防盗链,通过判断http_referer即网页来源来做防盗,比如那边一个“wps转化word”软件的下载地址是http://www.smalltool.cn/Download.asp?DT=N&DC=A&DS=A&ID=2627
如果在这里直接点以上地址相信会转到小工具的首页,而如果从小工具网页上进去下载,就不会出现这情况(从这里进http://www.smalltool.cn/html/1878.html然后右键点“电信下载一”选择复制快捷方式就会发现这里“电信下载一”和上面第一个地址是相同的),点第二个地址中的“电信下载一”却可以下载。
呵呵,搞定。。并不是真正的要防盗链,真想彻底做好防盗链措施,还是要买商业版防盗程序,不过是想看看那极品飞车的下载量到底从哪网站来的。