winnercn 发表于 2012-7-24 08:35:03

LNMP图片防盗链的简单方法

昨天在QQ群看到有朋友询问LNMP的环境如何防盗链,关于这个,问题,其实军哥在论坛已经做了解答,这边我就借过来分享,同时也算做一个笔记。
http://www.zrblog.net/wp-content/uploads/2011/12/lnmp0.8_thumb.png
由于nginx不支持.htaccess,所以,从这个方面直接去防止是行不通的,我们要通过修改配置文件来解决。
首先,我们找到需要防盗链的域名的conf文件,路径:/usr/local/nginx/conf/vhost/,比如zrblog.net.conf
还是先备份下,免得搞错了还能直接覆盖回去,这是好习惯!!! http://www.zrblog.net

找到下面的部分:
location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$      
{      
expires 30d;      
}


将它修改为:
location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$      
{      
valid_referers none blocked www.zrblog.net zrblog.net;      
if ($invalid_referer) {      
rewrite ^/ http://vpsaa.com/404.jpg;      
#return 404;      
}      
expires 30d;      
}


上面的内容,大家请根据个人的情况酌情修改,我这里做基本的解释。
第一行gif|jpg|jpeg|png……这些是您需要防止盗链的文件类型,您可以补充一些后缀类型;
第三行是你的网站的域名,就是说放行的域名,如果有多个,请添加,注意空格; http://www.zrblog.net

第五行是给盗链看到的图片,返回一个404.jpg,这个图片源地址是要可以外链的哦,不然,别人看到的也就一个XX。 http://www.zrblog.net

完成之后保存,上传到原位置覆盖,之后重启下lnmp使之生效。
/root/lnmp restart

另外,有朋友问到如何防采集,这个问题目前貌似没有特别有效的方法,建议大家可以从系统层面去研究,比如iptables规则的限制等。
页: [1]
查看完整版本: LNMP图片防盗链的简单方法