nginx配置基本防盗链

2022-06-15 11:46:37

1、配置资源盗链配置在location内部

location ~* \.(gif|jpg|png|swf|flv|css|js|jpeg)$ {
 
    root html;
 
    valid_referers none blocked *.wg.com;  #只允许以.wg.com结尾的域名访问,否则报错
 
    if ($invalid_referer) {
        return 404;
    }
}

在这里插入图片描述
下面分析一下这段代码:

 ~* \.(jpg|gif|swf)$:这段正则表达式表示匹配不区分大小写,以.jpg或 .gif 或 .swf结尾的文件;

 valid_referers:设置信任的网站,可以正常使用图片;

 none:浏览器中referer为空的情况,就是直接在浏览器访问图片;

 blocked:浏览器中referer不为空的情况,但是值被代理或被防火墙删除了,这些值不以http://或https://开头

 后面的网址或者域名:referer中包含相关字符串的网址。

  if语句:如果链接的来源域名不在valid_referers所列出的列表中,$invalid_referer为1,则执行后面的操作,即进行重写或返回403页面。

2、测试

cat /etc/hosts

ip地址 主机名 域名

10.0.0.30 node1  aa.wg.com
10.0.0.30 node1  www.aa.com
10.0.0.31 node2  www.bw.com

都能ping同
访问
在这里插入图片描述

证明
只允许以.wg.com结尾的域名访问

  • 作者:人生匆匆
  • 原文链接:https://blog.csdn.net/a13568hki/article/details/104018180
    更新时间:2022-06-15 11:46:37