ngx_http_referer_module模块:
用来阻止Referer首部无有效值的请求访问,可防止盗链
valid_referers none|blocked|server_names|string …;
定义referer首部的合法可用值,不能匹配的将是非法值
none:请求报文首部没有referer首部
blocked:请求报文有referer首部,但无有效值
server_names:referer首部中包含本主机名
arbitrary_string:任意字符串,但可使用*作通配符
regular expression:被指定的正则表达式模式匹配到的字符串,要使用~开头,例如: ~.*.magedu.com
测试网站:www.test.com,www.test.org
目前是test.org 盗链了https://www.test.com/a.jpg
在被盗链的服务器上设置禁止盗链
修改被盗链的主机的配置文件
vim /etc/nginx/conf.d/test.conf
valid_referers none block server_names *.test.com `.google. ~.baidu.;
if ($invalid_referer) {
return 403 "Forbidden Access";
}
}
通过谷歌百度过来的可以访问,其他不能