Nginx防盗链
一般的防盗链如下:
location ~ .*\.(gif|jpg|png|swf|flv)$ { valid_referers none blocked www.test.com www.demo.net; if ($invalid_referer) { rewrite ^/ http://www.test.com/404.html; #return 404; } }
第一行:gif|jpg|png|swf|flv
表示对gif、jpg、png、swf、flv后缀的文件实行防盗链
第二行:www.test.comwww.demo.net
表示对www.test.comwww.demo.net这2个来路进行判断
if{}里面内容的意思是,如果来路不是指定来路就跳转到错误页面,当然直接返回404也是可以的。nginx有个模块叫做ngx_http_referer_module,通过这个模块,可以很方便的做防盗链设置。
一般常用的方法是在server或者location段中加入:
valid_referers none blocked www.mydomain.com mydomain.com;
其中none表示空的来路,也就是直接访问,比如直接在浏览器打开一个图片,blocked表示被防火墙标记过的来路,server_names也就是域名了。
0.5.33以后的版本中,可以用*.mydomain.com来表示所有的二级域名。
一、针对不同的文件类型
location ~ .*\.(wma|wmv|asf|mp3|mmf|zip|rar|jpg|gif|png|swf|flv)$ { valid_referers none blocked *.mydomain.net mydomain.net; if ($invalid_referer) { #rewrite ^/ http://www.mydomain.net/403.html; return 403; } }
二、针对不同的目录
location /img/ { root /data/img/; valid_referers none blocked *.mydomain.net mydomain.net; if ($invalid_referer) { rewrite ^/ http://www.mydomain.net/images/error.gif #return 403; } }
相关推荐
咻咻ing 2020-05-10
WasteLand 2020-06-13
jxiao000 2020-04-30
SZStudy 2020-04-16
SZStudy 2020-02-10
houjinkai 2020-01-03
aolishuai 2019-12-25
大白配小猪 2019-11-12
yongzhang 2019-10-25
单调的低调 2019-09-09
fenghuoliuxing0 2019-09-07
xxuyuan 2011-07-02
CSDNMrWang 2011-06-13
chumeng 2011-06-04
daidaizhuzhu 2011-05-28
loveyy 2013-08-10
yanghan 2012-12-27
大伟爱自由 2010-04-21