您的位置:首页 > 运维架构 > Nginx

nginx实现防盗链配置方法介绍

2015-10-28 23:58 656 查看
有些朋友觉得防盗链就是防止图片,其实有很多东西要进行防盗链了,下面我来介绍在nginx中实现防盗链配置方法有对图片防盗链与下载资源等。

防盗链配置

假设网站域名是 www.php100.com。

编辑nginx.conf,在 www.php100.com 区域添加如下内容:

代码如下复制代码
location ~* .(gif|png|jpg|bmp|swf|flv)$ {
valid_referers none blocked www.php100.com php100.com;

if ($invalid_referer) {
return 403;
}
}

以上的例子可以实现扩展名为 gif,png,jpg,bmp,swf,flv的url防止被盗链。如果你需要其它的url防止被盗链,添加相应的后缀即可。

针对图片目录实行防盗链

代码如下复制代码
location /images/ {
alias /data/images/;
valid_referers none blocked *.mynginx.com;
if ($invalid_referer) {
rewrite ^/ http://www.php100.com;
#return 403;
}
}
编辑完成之后,重新启动nginx以便配置生效。

小提示:nginx中 location ~ 和 location ~*的区别:

location ~* 不区分大小写,location ~ 区分大小写。

需要注意的是,这二段防盗链的配置要放在正确的server里,也就是要放在图片url所在的server_name里。其次
rewrite也要写正确,否则可能造成重复rewrite,可以用firefox的插件Firebug来查看。如果不想重写到某个url,
可以直接返回403。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: