在Debian上實現Nginx防盜鏈,可以通過配置Nginx的ngx_http_referer_module
模塊來實現。以下是詳細的步驟:
如果你還沒有安裝Nginx,可以使用以下命令進行安裝:
sudo apt update
sudo apt install nginx
編輯Nginx的配置文件,通常位于/etc/nginx/nginx.conf
或/etc/nginx/sites-available/default
。你可以創建一個新的配置文件或直接編輯現有的配置文件。
假設你想保護一個名為protected.jpg
的圖片文件,可以添加以下配置:
server {
listen 80;
server_name example.com;
location /protected.jpg {
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) { return 403; }
:如果引用來源無效,則返回403 Forbidden狀態碼。root /var/www/html;
:指定文件所在的根目錄。在保存配置文件后,測試Nginx配置是否正確:
sudo nginx -t
如果沒有錯誤信息,重新加載Nginx以應用新的配置:
sudo systemctl reload nginx
嘗試從不同的域名或直接訪問protected.jpg
文件,確保只有來自允許域名的請求才能成功訪問。
ngx_http_referer_module
模塊。通過以上步驟,你可以在Debian上成功實現Nginx防盜鏈功能。