NGINX----应用----防盗链
2020-05-24 本文已影响0人
JuMinggniMuJ
有时候在浏览网页的时候,会遇到某些文件(图片等)无法访问的情况,这是因为图片的所有方做了防盗链机制。这些盗链访问并不会给网站带来利益或好处,相反,这会浪费网站的带宽,增加服务器的连接压力,比如有些网站是按流量收费的,那么只要有人访问了盗用图片或其他文件的网站,网站就要支付这部分的流量费用。那么怎么给自己的网站设置防盗链?
1.测试准备:
1.为了模拟测试,准备两个虚拟机:ip分别为192.168.43.250/192.168.43.91

2.访问测试:
浏览器输入:192.168.43.91/1.png,我们会发现这个图片可以正常访问:
3.模拟盗链访问:
我们使用另一个虚拟机,编辑index.html:
<h1>this is why we play</h1>
<img src="http://192.168.43.91/1.png" />
浏览器访问:192.168.43.250:

4.防盗链设置:
编辑192.168.43.91的配置文件nginx.conf:
#在80的server下配置访问目录下的jpg|gif|png|swf触发配置
location ~* \.(jpg|gif|png|swf)$ {
valid_referers none blocked 192.168.43.91; #设置允许192.168.43.91访问
if ($invalid_referer) {
return 403; #如果不是192.168.43.91访问则返回403
}
}
重启nginx:
./nginx -s reload
5.再次访问盗链网址:
这时发现盗链图片不能访问了,返回状态码是403: