利用 ngx_http_referer_module 判斷請求頭 Referer 字段,阻止非授權域名直接引用圖片/文件等資源。
location /photos/ {
valid_referers none blocked www.mydomain.com mydomain.com;
if ($invalid_referer) {
return 403;
}
}
none:允許無 Referer 頭的請求(如瀏覽器直接訪問、某些代理)。blocked:允許被防火牆/代理過濾後的 Referer(如 Referer: XXXXXXX)。server_names:允許的域名列表,支持通配符 *.mydomain.com(0.5.33+)。若 Referer 不在白名單中,$invalid_referer = 1,觸發 return 403。
Referer 可被偽造(如 curl -e "https://allowed.com" https://target.com/img.jpg),無法 100% 防盜鏈。對於高價值資源,建議結合 ngx_http_secure_link_module(帶簽名、過期時間的安全鏈接)或 Token 驗證機制。
Linux 磁碟修復指令大全:badblocks、cfdisk、dd、e2fsck、fsck、fdisk 完整參數詳解
Red Hat Linux 9 光碟安裝圖文教學(含分區規劃與啟動設定)
VMware Workstation 9 安裝 Mac OS X 10.8 實戰筆記:硬體配置、EBIOS 錯誤、DMG 轉 ISO、CPU 虛擬化故障、vmx 修改、解鎖補丁
深入解析 Linux 伺服器網路 I/O 模型:從 Select 到 Epoll 的效能躍升
Kingate 代理服務器安裝與配置完整教學(支援 HTTP/SOCKS/FTP)