字體:  

如何在 nginx 下設置圖片 防盜連

camry 發表於: 2015-1-18 21:18 來源: ADJ網路控股集團


Nginx 提供了很簡單就可以防盜連的方法。

就簡簡單單的設定一下 nginx.conf 就好了。因為這些模組都是內建的。

方式如下:

QUOTE:


# Prevent img to other site
location ~* \.(txt|ico|gif|png|bmp|jpg|jpeg|zip|rar|gz|7z|exe|mp3|flv|swf)$ {
valid_referers none blocked *.adj.idv.tw *.adj.com.tw 106.186.116.191;
if ($invalid_referer) {
    rewrite ^/ http://www.adj.idv.tw/templates/softsea/images/logo.jpg;
    }
}


這時候 location 的意思就是保護從網頁根目錄算起,所有的指定的副檔名都依照此規則
valid_referers none blocked 的意思就是不阻擋從哪些地方來的囉~ 這邊以空格來分隔允許的域名或 ip 位置
$invalid_referer 的意思就是不允許連結
rewrite ^/ http://www.adj.idv.tw/templates/softsea/images/logo.jpg; 的意思就是指定不允許的連結自動轉向到一個頁面,或是已經有設定 404 轉址的也可以先註解掉這行再把 #return 404 的註解拿掉,就會自動跑到你設定的 404 頁面了。