另一种方式是利用 SetEnvIfNoCase 和 access。具体的代码如下:
将上述代码,放入前面所讲的 httpd.conf 或 .htaccess 文件即可。SetEnvIfNoCase Referer "^http://xiaohui.com" local_ref=1
SetEnvIfNoCase Referer "^http://www.xiaohui.com" local_ref=1
![]()
Order Allow,Deny
Allow from env=local_ref
三、Apache 防盗链技术小结
通过判断 referer 变量的值,判断图片或资源的引用是否合法,只有在设定范围内的 referer,才能访问指定的资源,从而实现了防盗链(Anti-Leech)的目的。需要指出的是:不是所有的用户代理(浏览器)都会设置 referer 变量,而且有的还可以手工修改 referer,也就是说,referer 是可以被伪造的。本文所讲的,只是一种简单的防护手段。当然,应付一般的盗链也足够了。
四、参考资料
• Apache Documentation: Authentication, Authorization and Access Control (v2.2)
• Apache Documentation: htaccess files (V2.2)
• 逆火网站日志分析器
附: 本文已经作者xiaohui.com授权IT168服务器频道刊登,感谢作者的支持。原文链接:(点击)
