溫馨提示×

Ubuntu中Nginx如何實現防盜鏈

小樊
47
2025-07-26 08:43:13
欄目: 智能運維

在Ubuntu中,使用Nginx實現防盜鏈可以通過配置Nginx的ngx_http_referer_module模塊來完成。這個模塊允許你根據HTTP請求頭中的Referer字段來控制訪問權限。以下是實現防盜鏈的步驟:

  1. 安裝Nginx(如果尚未安裝):

    sudo apt update
    sudo apt install nginx
    
  2. 編輯Nginx配置文件: 打開Nginx的配置文件,通常位于/etc/nginx/nginx.conf/etc/nginx/sites-available/default。

    sudo nano /etc/nginx/sites-available/default
    
  3. 添加防盜鏈配置: 在server塊中添加以下配置:

    server {
        listen 80;
        server_name example.com;  # 替換為你的域名或IP地址
    
        location / {
            valid_referers none blocked server_names ~\.example\.com$;  # 允許的Referer
            if ($invalid_referer) {
                return 403;  # 返回403 Forbidden
            }
            root /var/www/html;  # 替換為你的網站根目錄
            index index.html index.htm;
        }
    }
    

    解釋:

    • valid_referers指令用于指定允許的Referer。none表示不允許任何Referer,blocked表示阻止的Referer(通常用于阻止來自搜索引擎爬蟲的請求),server_names表示允許的域名列表,~\.example\.com$表示允許的子域名。
    • if ($invalid_referer)用于檢查Referer是否有效,如果無效則返回403 Forbidden狀態碼。
  4. 測試配置: 在保存并退出編輯器后,測試Nginx配置是否正確:

    sudo nginx -t
    
  5. 重新加載Nginx: 如果配置測試通過,重新加載Nginx以應用更改:

    sudo systemctl reload nginx
    

通過以上步驟,你就可以在Ubuntu中使用Nginx實現防盜鏈功能。請根據你的實際需求調整配置中的域名和路徑。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女