1.确定要修改的文件
如果你安装lnmp后,没有新建站点,而是使用默认站点,那你需要修改的文件是 /usr/local/nginx/conf/nginx.conf
如果你新建了站点,那么要修改的文件是 /usr/local/nginx/conf/vhost/ 这个文件夹下面的相应文件,通常应该是域名.conf
2.根据你的情况,下载或者打开相应的.conf文件,注意先备份
找到下面内容
location ~ .* \ . ( gif | jpg | jpeg | png | bmp | swf ) $
{
expires 30d ;
}
把它修改为类似下面的样子
location ~ .* \ . ( gif | jpg | jpeg | png | bmp | swf ) $
{
valid_referers none blocked *.domin.com *.domin.net ;
if ( $invalid_referer ) {
rewrite ^ / http : //domin.cn/ 404.gif;
#return 404;
}
expires 30d ;
}
你要修改的地方
gif|jpg|jpeg|….,这些是你想要屏蔽的文件类型,可以根据情况修改
valid_referers none blocked *.domin.com *.domin.net , 其中的网址修改为你网站的域名,或者是你允许显示你网站图片的其他网站域名,注意中间用空格分开,而不是逗号
rewrite ^ / http : //domin.cn/ 404.gif ,显示给盗链者看到的图片,注意不要放到domin.com或domin.net上,因为放盗链的作用,那样对方是看不到的,可以上传到一些支持外联的网络相册上。
注:以上其实都不是真正防盗链,但是在其他网站调用的本站图片都已经作了防护了,如果用户通过浏览器直接输入图片地址或下载地址,仍然会显示图片,仍可下载文件,因为 valid_referers 里多了“none blocked”。那如何在ngingx下如何彻底地实现真正意义上的防盗链呢?那就是把“none blocked”去掉,这样浏览器直接输入就不会显示图片了!
3.保存修改后的文件,上传覆盖原始文件
需要重新启动lnmp后才能看到效果,命令是:/root/lnmp restart
发表评论