nginx如何配置防盜鏈
- 一、盜鏈原理
- 1.1 網頁準備
- 1.2 瀏覽器訪問驗證
- 二、配置防盜鏈
- 2.1 修改組態檔
- 2.2 瀏覽器訪問驗證
一、盜鏈原理
1.1 網頁準備
Web源主機(192.168.153.20)配置
cd /usr/local/nginx/html
將preview.jpg圖片檔案傳到/usr/local/nginx/html目錄下
vim index.html
......
<img src="preview.jpg"/>
</body>
</html>
echo "192.168.153.20 www.wt.com" >> /etc/hosts
echo "192.168.153.10 www.abc.com" >> /etc/hosts


盜鏈網站主機(192.168.153.20)配置
為了區別于源主機的 nginx 服務,盜鏈主機使用一般的wed服務即可
yum install -y httpd
vim /var/www/html/index.html
<html><body><h1>Hello!</h1>
<img src="http://www.wt.com/preview.jpg"/>
</body></html>
echo "192.168.153.20 www.wt.com" >> /etc/hosts
echo "192.168.153.10 www.abc.com" >> /etc/hosts
systemctl restart httpd

1.2 瀏覽器訪問驗證


二、配置防盜鏈
2.1 修改組態檔
vim /usr/local/nginx/conf/nginx.conf
http {
......
server {
......
location ~* \.(jip|gif|swf)$ {
valid_referers *.wt.com wt.com;
if ( $invalid_referer ) {
rewrite ^/ http://www.wt.com/error.png;
#return 403;
}
}
......
}
}
~* .(jpg|gif|swf)$ :這段正則運算式表示匹配不區分大小寫,以.jpg或.gif 或.swf 結尾的檔案;
valid_referers :設定信任的網站,可以正常使用圖片;
后面的網址或者域名: referer 中包含相關字串的網址;
if陳述句:如果鏈接的來源域名不在valid_referers所列出的串列中,$invalid_referer為1,則執行后面的操作,即進行重寫或回傳403頁面,

將error.png圖片檔案傳到/usr/local/nginx/html目錄下

2.2 瀏覽器訪問驗證

轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/250665.html
標籤:其他
