欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

配置Nginx的防盜鏈的操作方法

 更新時間:2019年05月24日 09:55:41   作者:varlemon  
這篇文章主要介紹了配置Nginx的防盜鏈的操作方法,本文通過實例代碼給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下

實驗環(huán)境

•一臺最小化安裝的CentOS 7.3虛擬機
•配置:1核心/512MB
•nginx版本1.12.2

一、配置盜鏈網(wǎng)站

1.啟動一臺nginx虛擬機,配置兩個網(wǎng)站

vim /etc/nginx/conf.d/vhosts.conf

添加以下內(nèi)容

server {
 listen 80;
 server_name site1.test.com;
 root /var/wwwroot/site1;
 index index.html;

 location / {
 }
}

server {
 listen 80;
 server_name site2.test.com;
 root /var/wwwroot/site2;
 index index.html;

 location / {
 }
}

2.在宿主機編輯C:\Windows\System32\drivers\etc\hosts文件

192.168.204.11      site1.test.com
192.168.204.11      site2.test.com

3.創(chuàng)建網(wǎng)站根目錄

mkdir /var/wwwroot
cd /var/wwwroot
mkdir site1
mkdir site2
echo -e "<h1>site1</h1><img src='1.jpg'>" >> site1/index.html
echo -e "<h1>site2</h1><img src='http://site1.test.com/1.jpg'>" >> site2/index.html

4.將1.jpg上傳到/var/wwwroot/site1目錄

5.啟動nginx服務(wù)

systemctl restart nginx
netstat -anpt | grep nginx

6.防火墻放通80端口

setenforce 0
firewall-cmd --zone=public --add-port=80/tcp --permanent
firewall-cmd --reload

7.在宿主機訪問

http://site1.test.com

http://site2.test.com

二、配置site1.test.com防盜鏈

1.編輯nginx配置文件

server {
 listen 80;
 server_name site1.test.com;
 root /var/wwwroot/site1;
 index index.html;

 location / {
 }

 location ~ \.(jpg|png|gif|jpeg)$ {
  valid_referers site1.test.com;
  if ($invalid_referer) {
   return 403;
  }
 }
}
server {
 listen 80;
 server_name site2.test.com;
 root /var/wwwroot/site2;
 index index.html;

 location / {
 }
}

2.重啟nginx服務(wù)

systemctl restart nginx

3.在宿主機訪問

清除瀏覽器緩存,訪問http://site1.test.com

清除瀏覽器緩存,訪問http://site2.test.com

可見,防盜鏈配置起到了作用

三、配置防盜鏈返回其他資源

1.編輯nginx配置文件

增加一個虛擬主機,對防盜鏈保護的資源進行重寫

server {
 listen 80;
 server_name site1.test.com;
 root /var/wwwroot/site1;
 index index.html;
 location / {
 }
 location ~ \.(jpg|png|gif|jpeg)$ {
  valid_referers site1.test.com;
  if ($invalid_referer) {
   rewrite ^/ http://site3.test.com/notfound.jpg;
   #return 403;
  }
 }
}
server {
 listen 80;
 server_name site2.test.com;
 root /var/wwwroot/site2;
 index index.html;
 location / {
 }
}
server {
 listen 80;
 server_name site3.test.com;
 root /var/wwwroot/site3;
 index index.html;
 location / {
 }
}

解釋

location ~ \.(jpg|png|gif|jpeg)$ {}為設(shè)置防盜鏈的文件類型,使用豎線|分隔。
valid_referers site1.test.com *.nginx.org;為白名單,使用空格分隔,可以使用*進行泛域名設(shè)置。
if ($invalid_referer) {}為判斷是否符合白名單,不符合白名單將執(zhí)行{}內(nèi)的內(nèi)容。
rewrite ^/ http://site3.test.com/notfound.jpg;為重寫資源,如果不合符白名單,則重寫為該地址。
return 403;代表返回的狀態(tài)碼為403。

2.建立site3根目錄

cd /var/wwwroot
mkdir site3
echo -e "<h1>site3</h1><img src='notfound.jpg'>" >> site3/index.html

3.上傳notfound.jpg文件至/var/wwwroot/site3目錄

4.重啟nginx服務(wù)

systemctl restart nginx

5.在宿主機編輯C:\Windows\System32\drivers\etc\hosts文件

增加對site3.test.com的映射

192.168.204.11      site1.test.com
192.168.204.11      site2.test.com
192.168.204.11      site3.test.com

6.在宿主機訪問http://site2.test.com

可以看到,在site2中盜用的site1的1.jpg文件,被重定向到了site3上的notfound.jpg文件

總結(jié)

以上所述是小編給大家介紹的配置Nginx的防盜鏈的操作方法 ,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復(fù)大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
如果你覺得本文對你有幫助,歡迎轉(zhuǎn)載,煩請注明出處,謝謝!

相關(guān)文章

  • nginx如何通過proxy_pass設(shè)置反向代理,隱藏端口號

    nginx如何通過proxy_pass設(shè)置反向代理,隱藏端口號

    這篇文章主要介紹了nginx如何通過proxy_pass設(shè)置反向代理,隱藏端口號方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-01-01
  • 詳解nginx rewrite和根據(jù)url參數(shù)location

    詳解nginx rewrite和根據(jù)url參數(shù)location

    本篇文章主要是介紹了nginx rewrite和根據(jù)url參數(shù)location,有興趣的同學(xué)可以了解以下。
    2016-11-11
  • Ubuntu系統(tǒng)下的Nginx服務(wù)器軟件安裝時的常見錯誤解決

    Ubuntu系統(tǒng)下的Nginx服務(wù)器軟件安裝時的常見錯誤解決

    這篇文章主要介紹了Ubuntu系統(tǒng)下的Nginx服務(wù)器軟件安裝時的常見問題解決,包括徹底卸載Nginx的方法介紹,需要的朋友可以參考下
    2016-03-03
  • Nginx代理到https地址忽略證書驗證配置的實現(xiàn)

    Nginx代理到https地址忽略證書驗證配置的實現(xiàn)

    在特定情況下,Nginx代理到HTTPS地址可能需要忽略證書驗證,本文就來介紹一下如何實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2024-09-09
  • nginx部署前端項目的超級詳細步驟記錄

    nginx部署前端項目的超級詳細步驟記錄

    眾所周知Nginx是一款高性能的http服務(wù)器/反向代理服務(wù)器及電子郵件(IMAP/POP3)代理服務(wù)器,這篇文章主要給大家介紹了關(guān)于nginx部署前端項目的超級詳細步驟,需要的朋友可以參考下
    2023-02-02
  • nginx設(shè)置超時時間的問題及解決方案

    nginx設(shè)置超時時間的問題及解決方案

    程序在處理大量數(shù)據(jù),接口超過1分鐘(默認的)未返回數(shù)據(jù),導(dǎo)致等待超時,出現(xiàn)這種情況,我們可以先優(yōu)化程序,縮短執(zhí)行時間,可以調(diào)大nginx超時限制的參數(shù),使程序可以正常執(zhí)行,本文介紹nginx設(shè)置超時時間及504 Gateway Time-out的問題解決方案,一起看看吧
    2024-02-02
  • Nginx訪問日志及錯誤日志參數(shù)說明

    Nginx訪問日志及錯誤日志參數(shù)說明

    這篇文章主要介紹了Nginx訪問日志及錯誤日志參數(shù)說明,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-11-11
  • Nginx定義域名訪問方式

    Nginx定義域名訪問方式

    這篇文章主要介紹了Nginx定義域名訪問方式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-05-05
  • 基于nginx access日志格式詳解

    基于nginx access日志格式詳解

    下面小編就為大家分享一篇基于nginx access日志格式詳解,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-03-03
  • Nginx+keepalived配置的實現(xiàn)步驟

    Nginx+keepalived配置的實現(xiàn)步驟

    本文主要介紹了Nginx+keepalived配置的實現(xiàn)步驟,實現(xiàn)配置Nginx和keepalived、編寫腳本以及測試配置,具有一定的參考價值,感興趣的可以了解一下
    2025-05-05

最新評論