在網(wǎng)站上嵌入別的網(wǎng)站上的圖片鏈接、顯示這些圖片,就是盜鏈。這些圖片在自己的網(wǎng)站上顯示,占用的卻是別的服務器的資源和寬帶。
http協(xié)議頭中的Referer字段表示當前請求是從哪個網(wǎng)站鏈接過來的,服務器通過Referer能夠了解請求來源。
nginx的valid_referers指令能夠定義合法Referer來源。
# 網(wǎng)站配置
listen 8299;
server_name localhost;
location / {
root html;
index index.html index.htm;
}
# 防盜鏈設置
location ~* \.(jpeg|png|jpg|gif)$ {
valid_referers none localhost;
if ($invalid_referer){
return 403 "禁止訪問";
}
}
- \.(jpeg|png|jpg|gif)$ 表示匹配圖片后綴的URI。
valid_referers none localhost
表示協(xié)議頭沒有帶Referer或Referer為當前網(wǎng)站localhsot,即允許訪問的網(wǎng)站。$invalid_referer
Referer為空或localhsot時值為0,否則值為1。return 403 "禁止訪問"
Referer不滿足條件時不允許訪問圖片資源。
該文章在 2025/7/1 23:40:58 編輯過