溫馨提示×

nginx在centos上如何實現防盜鏈

小樊
44
2025-07-20 19:24:37
欄目: 智能運維

在CentOS上使用Nginx實現防盜鏈,可以通過配置Nginx的ngx_http_referer_module模塊來完成。以下是詳細的步驟:

1. 安裝Nginx

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

sudo yum install epel-release
sudo yum install nginx

2. 配置Nginx防盜鏈

編輯Nginx的配置文件,通常位于/etc/nginx/nginx.conf/etc/nginx/conf.d/default.conf。

示例配置

假設你有一個圖片目錄/var/www/html/images,你希望只有來自特定域名的請求才能訪問這些圖片。

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 systemctl restart nginx

4. 測試防盜鏈

你可以使用瀏覽器訪問你的圖片目錄,確保只有來自允許域名的請求才能成功訪問圖片。例如:

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

如果引用無效,你會收到403 Forbidden響應。

注意事項

  • 確保你的Nginx版本支持ngx_http_referer_module模塊。
  • 防盜鏈配置可以放在server塊或location塊中,根據你的需求進行調整。
  • 你可以根據需要添加更多的域名到valid_referers指令中。

通過以上步驟,你可以在CentOS上使用Nginx實現基本的防盜鏈功能。

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