windows主机.htaccess防盗链不起作用的时候,可以试着用此方法,不过会加重程序处理负担。下面来分享两种解决盗链的办法。大家可以选择使用。
在根文件夹下建立文本文档,粘贴以下内容:
将文本文档改名为:httpd.ini (扩展名一起改)。如果你的根文件夹下有这个文件,打开这个文件,添加以下代码即可。
1
2
3
4
5
6
7
8
|
[ISAPI_Rewrite] CacheClockRate 3600 RepeatLimit 32 #已配置了伪静态的可以删除上面三行代码 #防盗链设置 RewriteCond Host: (.+) RewriteCond Referer: (?!http://(?:linqu\.us|(.*)\.linqu\.us|baidu\.com|(.*)\.baidu\.com|google\.com|(.*).\google.com|google\.com.hk|(.*).\google.com.hk)).* RewriteRule .*\.(?:jpg|jpeg|gif|png|bmp|rar|zip|exe) /fangdao.jpg [I,O,N] |
代码说明:
RewriteCond Host: (.+)
RewriteCond Referer: (?!http://(?:linqu\.us|(.*)\.linqu\.us|baidu\.com|(.*)\.baidu\.com|google\.com|(.*).\google.com|google\.com.hk|(.*).\google.com.hk)).*
RewriteRule .*\.(?:jpg|jpeg|gif|png|bmp|rar|zip|exe) /fangdao.jpg [I,O,N]
红色部分为你的网站,例如我的域名为linqu.us。注意一个网站要有两个【baidu\.com|(.*)\.baidu\.com】
蓝色部分为防盗链图片,放到根文件夹下即可
===================================
有人反映设置了没用,有可能是以下几个原因:
首先该设置仅适用于win主机,linux主机请用.htaccess实现
其次,该设置需要服务器组件ReWrite支持,请确认你的服务器是否安装该组件
最后,如果符合以上两条,请给网站根目录下的httpd.ini文件USER用户的读取和运行权限即可。
下面接上另一种办法来做防盗链,建议做两种形式的盗链,盗链生生不息。
1、下载微软自己提供的IIS REWRITE模块:http://www.microsoft.com/downloads/zh-cn/details.aspx?familyid=1b8c7bd8-8824-4408-b8fc-49dc7f951a00
2、修改网站的web.config或用记事本制作一个web.config,记住将*txt格式改为.config 代码如下:
<system.webServer>
<rewrite>
<rules>
<rule name="Prevent hotlinking">
<match url="^.*\.(rar|zip)$" ignoreCase="true" />
<conditions>
<add input="{HTTP_REFERER}" pattern="http://www.zhaoyongjie.cn/.*" negate="true" />
<add input="{HTTP_REFERER}" pattern="http://wt.zhaoyongjie.cn/.*" negate="true" />
</conditions>
<action type="Rewrite" url="/no.html" />
</rule>
</rules>
</rewrite>
</system.webServer>
设置了只允许http://www.zhaooyongjie.cn、http://www.zhaooyongjie.cn调用网站的rar、zip类型的文件。
将以上文件上传至网站根目录(wwwroot)下即可 如果网站有设置伪静态,直接将上述代码加入原有web.config一样可以生效
发表评论