在CentOS系統中,使用Nginx進行防盜鏈設置可以通過配置Nginx的ngx_http_referer_module
模塊來實現。以下是詳細的步驟:
如果你還沒有安裝Nginx,可以使用以下命令進行安裝:
sudo yum install epel-release
sudo yum install nginx
編輯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;
:指定資源的根目錄。保存配置文件后,重新加載Nginx以應用更改:
sudo nginx -s reload
你可以通過瀏覽器或使用curl
命令來測試防盜鏈是否生效。
嘗試訪問你的圖片資源,例如:
http://example.com/images/example.jpg
如果引用來源不在允許列表中,你應該會看到403 Forbidden錯誤。
你可以使用以下curl
命令來測試:
curl -I http://example.com/images/example.jpg
如果引用來源無效,響應頭中應該包含HTTP/1.1 403 Forbidden
。
ngx_http_referer_module
模塊。通過以上步驟,你可以在CentOS系統中使用Nginx設置防盜鏈,保護你的資源不被未經授權的訪問。