Apache和IIS防止图片和视频盗链的方法

2011-10-05 07:05:35来源:itwhy作者:

本文介绍在IIS、Apache和Nginx下图片和视频文件防止盗链的方法,原理是使用HTTP协议的Referer字段,判断网页地址,然后跳转替换。下面的具体的代码(注意:代码里面的网址要替换成你自己网站的网址):

本文介绍在IIS、Apache和Nginx下图片和视频文件防止盗链的方法,原理是使用HTTP协议的Referer字段,判断网页地址,然后跳转替换。下面的具体的代码(注意:代码里面的网址要替换成你自己网站的网址):

Apache防止图片盗链的方法

Apache 防盗链需要加载mod_rewrite.so模块。

httpd.conf 或 .htaccess 文件里面加入如下语句

RewriteEngine On
RewriteCond %{HTTP_REFERER} !^http://weste.net/.*$ [NC]
RewriteCond %{HTTP_REFERER} !^http://weste.net$ [NC]
RewriteCond %{HTTP_REFERER} !^http://www.weste.net/.*$ [NC]
RewriteCond %{HTTP_REFERER} !^http://www.weste.net$ [NC]
RewriteRule .*\.(png|gif|jpg|swf|bmp|flv)$ http://www.weste.net/nolink.gif [R,NC]

IIS防止图片和视频盗链的方法

IIS支持UrlRewrite吗?答案:不支持。但是我们可以通过安装第三方服务器扩展让IIS支持。目前有一种产品能比较好地支持IIS的UrlRewrite,名字叫ISAPI_Rewrite。

httpd.ini里面加入如下语句

RewriteCond Host: (.+)
RewriteCond Referer: (?!http://\1.*).*
RewriteRule .*\.(?:gif|jpg|png|swf|flv|bmp) /nolink.gif [I,O]

Nginx防图片和视频盗链的方法

location ~* \.(gif|jpg|png|swf|flv|bmp)$ {
 valid_referers none blocked *.weste.net weste.net;
  if ($invalid_referer) {
   rewrite ^/ http://www.weste.net/nolink.gif;
  }
}

原文:http://www.itwhy.org/2011/10-02/1270.html
关键词:ApacheIISNginx

赞助商链接: