首页主机资讯如何配置Nginx防盗链

如何配置Nginx防盗链

时间2025-11-06 10:33:04发布访客分类主机资讯浏览1314
导读:配置Nginx防盗链主要是通过设置HTTP请求头中的Referer字段来实现的。以下是一个基本的步骤指南,帮助你配置Nginx防盗链: 打开Nginx配置文件: 通常,Nginx的主配置文件位于/etc/nginx/nginx.conf...

配置Nginx防盗链主要是通过设置HTTP请求头中的Referer字段来实现的。以下是一个基本的步骤指南,帮助你配置Nginx防盗链:

  1. 打开Nginx配置文件: 通常,Nginx的主配置文件位于/etc/nginx/nginx.conf,但防盗链的配置通常放在网站的虚拟主机配置文件中,例如/etc/nginx/sites-available/yourdomain.com

  2. 编辑虚拟主机配置文件: 使用你喜欢的文本编辑器(如vimnano等)打开虚拟主机配置文件。

    sudo nano /etc/nginx/sites-available/yourdomain.com
    
  3. 添加防盗链配置: 在server块中添加以下配置:

    server {
        
        listen 80;
        
        server_name yourdomain.com www.yourdomain.com;
    
    
        location / {
        
            # 允许的来源
            valid_referers none blocked server_names yourdomain.com www.yourdomain.com;
    
    
            # 如果Referer不在允许列表中,返回403 Forbidden
            if ($invalid_referer) {
        
                return 403;
    
            }
        
    
            # 其他配置...
            root /var/www/html;
        
            index index.html index.htm;
    
        }
    
    }
        
    

    解释:

    • valid_referers指令用于指定允许的来源。可以设置为none(不允许任何来源)、blocked(阻止的来源)、server_names(允许的域名列表)。
    • $invalid_referer是一个变量,如果Referer不在允许列表中,该变量的值为true
    • if ($invalid_referer)块用于检查Referer是否有效,如果无效则返回403 Forbidden状态码。
  4. 保存并退出编辑器: 按Ctrl+X退出nano,然后按Y确认保存,最后按Enter退出。

  5. 测试Nginx配置: 在重新加载Nginx之前,先测试配置文件是否有语法错误。

    sudo nginx -t
    

    如果配置文件没有问题,你会看到类似以下的输出:

    nginx: configuration file /etc/nginx/nginx.conf test is successful
    
  6. 重新加载Nginx: 使配置生效,重新加载Nginx服务。

    sudo systemctl reload nginx
    

    或者如果你使用的是较旧的系统初始化系统,可以使用:

    sudo service nginx reload
    

完成以上步骤后,Nginx就会根据配置的防盗链规则来阻止非法引用。你可以根据需要调整valid_referers指令中的域名列表和其他参数。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: 如何配置Nginx防盗链
本文地址: https://pptw.com/jishu/743739.html
ubuntu golang日志如何优化 Debian Nginx如何备份

游客 回复需填写必要信息