溫馨提示×

centos nginx防盜鏈設置

小樊
43
2025-05-10 23:22:25
欄目: 智能運維

在CentOS系統中,使用Nginx進行防盜鏈設置可以通過配置Nginx的ngx_http_referer_module模塊來實現。以下是詳細的步驟:

1. 安裝Nginx

如果你還沒有安裝Nginx,可以使用以下命令進行安裝:

sudo yum install epel-release
sudo yum install nginx

2. 配置防盜鏈

編輯Nginx的配置文件,通常位于/etc/nginx/nginx.conf/etc/nginx/conf.d/default.conf。你可以創建一個新的配置文件或直接在現有的配置文件中添加防盜鏈規則。

示例配置

假設你的網站域名是example.com,并且你希望允許來自特定域名的請求訪問你的圖片資源。

server {
    listen 80;
    server_name example.com;

    location /images/ {
        valid_referers none blocked server_names example.com www.example.com;
        if ($invalid_referer) {
            return 403;
        }
        root /var/www/html;
    }

    location / {
        root /var/www/html;
    }
}

解釋

  • valid_referers none blocked server_names example.com www.example.com;:這行配置指定了允許的引用來源。none表示沒有任何引用來源,blocked表示被阻止的引用來源,server_names表示允許的域名列表。
  • if ($invalid_referer):如果引用來源無效,則返回403 Forbidden狀態碼。
  • root /var/www/html;:指定資源的根目錄。

3. 重新加載Nginx配置

保存配置文件后,重新加載Nginx以應用更改:

sudo nginx -s reload

4. 測試防盜鏈

你可以通過瀏覽器或使用curl命令來測試防盜鏈是否生效。

使用瀏覽器

嘗試訪問你的圖片資源,例如:

http://example.com/images/example.jpg

如果引用來源不在允許列表中,你應該會看到403 Forbidden錯誤。

使用curl命令

你可以使用以下curl命令來測試:

curl -I http://example.com/images/example.jpg

如果引用來源無效,響應頭中應該包含HTTP/1.1 403 Forbidden。

注意事項

  • 確保你的Nginx版本支持ngx_http_referer_module模塊。
  • 防盜鏈配置應該根據你的具體需求進行調整。
  • 如果你有大量的圖片資源,可以考慮使用更復雜的防盜鏈策略,例如使用簽名URL。

通過以上步驟,你可以在CentOS系統中使用Nginx設置防盜鏈,保護你的資源不被未經授權的訪問。

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