码迷,mamicode.com
首页 > Web开发 > 详细

apache 配置防盗链

时间:2016-02-26 15:35:09      阅读:197      评论:0      收藏:0      [点我收藏+]

标签:apache   防盗链   referer   防盗链白名单   

防盗链的原理是利用http协议发过来的包中的referer信息来实现的。

referer就是你访问的网址的上一个网址。也就是你离开的地址。

通过检测你的上个地址是不是自家的网站,从而应用防盗。


在配置文件中写入

1    SetEnvIfNoCase Referer "^http://.*\.dxjun\.cn" local_ref

2    SetEnvIfNoCase Referer ".*\.test\.cn" local_ref

3    SetEnvIfNoCase Referer "^$" local_ref

4    <filesmatch "\.(txt|doc|mp3|zip|rar|jpg|gif|png|js|css)">

5        Order Allow,Deny

6        Allow from env=local_ref

7    </filesmatch>


规则中也可以直接写入http://www.dxjun.cn这种地址,但如果要在各种apache版本中通用的话,最好就用通用的写法

可以添加多条规则,就像1,2 行.第三行表示允许空referer(就像是直接在浏览器中输入地址,他没有上个地址,referer为空)。

第4行防盗的文件后缀。

5,6行配置让防盗生效。必须要。

另外需要说明的是白名单的格式:SetEnvIfNoCase Referer "^http://.*\.dxjun\.cn" local_ref  在dxjun的前面的\.表示是前面必须要存在字符。这个\.(一个转义字符)就是说在dxjun前面有一个.,在点前面是通配,也就是说是一个二级域名(www也是二级)。

如果使用这样的规则,则表示www.dxjun.cn是可以正常使用的。而dxjun.cn则会被认为是盗链。要达到dxjun的前面可以存在,也可以不存在。把\.删掉就好了。

改好了之后不要忘了apachectl -t检测一下配置文件是否有误。然后apachectl restart或者apachectl graceful使配置生效。


本文出自 “源末” 博客,请务必保留此出处http://11157507.blog.51cto.com/11147507/1745285

apache 配置防盗链

标签:apache   防盗链   referer   防盗链白名单   

原文地址:http://11157507.blog.51cto.com/11147507/1745285

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!