灯火互联
管理员
管理员
  • 注册日期2011-07-27
  • 发帖数41778
  • QQ
  • 火币41290枚
  • 粉丝1086
  • 关注100
  • 终身成就奖
  • 最爱沙发
  • 忠实会员
  • 灌水天才奖
  • 贴图大师奖
  • 原创先锋奖
  • 特殊贡献奖
  • 宣传大使奖
  • 优秀斑竹奖
  • 社区明星
阅读:2120回复:0

apache主机利用.htaccess防止图片盗链

楼主#
更多 发布于:2011-11-13 13:13
很多朋友问怎么样防止图片和文件盗链,如果你用的是Apache服务器,那么使用.htaccess文件就可以很方便的进行设置。
假设你的图片目录为upload,就在该目录下放置 .htaccess 文件,规则如下:
RewriteEngine on
RewriteCond %{HTTP_REFERER} !^$ [NC] //允许直接网址访问
RewriteCond %{HTTP_REFERER} !meihuax.com [NC]
RewriteCond %{HTTP_REFERER} !baidu.com [NC]
RewriteCond %{HTTP_REFERER} !google* [NC]
RewriteCond %{HTTP_REFERER} !soso.com [NC]
RewriteCond %{HTTP_REFERER} !bing.com [NC]
RewriteCond %{HTTP_REFERER} !yahoo* [NC]
RewriteRule .(gif|jpg|png)$ /nopic.gif [R,NC,L]

如果访问图片的请求不是直接输入网址,既不是自身站点,也不是google.com,baidu.com 或者 soso.com等搜索引擎,那么就用根目录的nopic.gif替换说盗链的图片。
注意:替换显示的图片不要放在设置防盗链的目录中。
再解释一下上述规则:
1、RewriteCond %{HTTP_REFERER} !^$ [NC]
允许空“HTTP_REFERER”的访问,即允许用户在浏览器地址栏中直接输入图片地址时图片文件的显示,推荐开启。
2、RewriteCond %{HTTP_REFERER} !domain.com [NC]
设置允许访问的HTTP来源,包括我们的站点自身、Google、Baidu、Soso等。
3、RewriteRule .*.(gif|jpg|png)$ /nopic.gif [R,NC,L]
定义被盗链时替代的图片,让所有盗链 jpg、gif、png 等文件的网页,显示根目录下的 nopic.gif 文件。


喜欢0 评分0
游客

返回顶部