有些時候,大家不想讓別人調用自己的圖片,一是因為個人版權的問題,再一點就是會增加服務器的負載、還會產生一些沒必要的流量。
其實在Nginx里面,很容易就做到防盜鏈的,在nginx.conf文件加入一個localtion配置項。
下面請看配置:
location ~* ^.+\.(gif|jpg|png|swf|flv|rar|zip)$ { valid_referers none blocked www.-------.com ---------.com; if ($invalid_referer) { return 404;
#rewrite ^/ https://www.-------.com/wwww.jpg; }
access_log off; root html/www; expires 1d; break;
}
顯示給盜鏈者看到的圖片,注意不要放到自己的域名上,因為放盜鏈的作用,那樣對方是看不到的,可以上傳到一些支持外聯的網絡相冊上。
當然了,也可以設置某個目錄防盜鏈,只需把localtion匹配的改成一個目錄就可以了,比如:
location /www/ {
alias /www/;
valid_referers none blocked www.qqqq.com qqqq.com; #none blocked 去掉之后,訪問文件的路徑,無法直接到達 if ($invalid_referer) { return 404; } }
這樣就對images這個目錄設置防盜鏈了。
NGINX錯誤頁面友好顯示
范例1:對錯誤代碼403實行本地頁面跳轉,命令如下:
###www server { listen 80; server_name www.nmtui.com; location / { root html/www; index index.html index.htm; } error_page 403 /403.html; #<==當出現403錯誤時,會跳轉到403.html頁面 }
# 上面的/403.html是相對於站點根目錄html/www的。
范例2:50x頁面放到本地單獨目錄下,進行優雅顯示。
# redirect server error pages to the static page /50x.html error_page 500 502 503 504 /50x.html; location = /50x.html { root /data0/www/html; }