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

Nginx配置防盜鏈保護(hù)靜態(tài)資源的詳細(xì)教程

 更新時間:2025年02月23日 09:46:55   作者:神秘泣男子  
防盜鏈?zhǔn)且环N通過檢查 HTTP 請求頭中的 Referer 字段來限制資源訪問的技術(shù),常用于保護(hù)圖片、視頻等靜態(tài)資源不被其他網(wǎng)站直接引用,以下是Nginx防盜鏈的原理、配置步驟以及測試方法,幫助你快速配置和驗(yàn)證防盜鏈功能,需要的朋友可以參考下

1. 防盜鏈的原理

防盜鏈通過檢查 HTTP 請求頭中的 Referer 字段來判斷請求來源:

  • 如果請求來源是允許的域名,Nginx 會正常返回資源。
  • 如果請求來源是未授權(quán)的域名(或者沒有 Referer 字段),Nginx 會拒絕請求(返回 403 錯誤)。

常見場景:

  • 保護(hù)圖片、視頻等靜態(tài)資源不被其他網(wǎng)站直接引用。
  • 限制文件下載資源只能通過特定頁面訪問。

2. 配置步驟

(1) 編輯 Nginx 配置文件

打開 Nginx 配置文件:

vim /usr/local/nginx/conf/nginx.conf

在 server 塊中添加以下內(nèi)容:

location ~* \.(gif|jpg|jpeg|png|bmp|ico)$ {
    valid_referers none blocked yourdomain.com *.yourdomain.com;
    if ($invalid_referer) {
        return 403;
    }
}

配置說明:

  • location ~* \.(gif|jpg|jpeg|png|bmp|ico)$
    • 匹配圖片文件的擴(kuò)展名(如 .gif、.jpg 等)。
    • ~* 表示正則表達(dá)式匹配,并且忽略大小寫。
valid_referers none blocked yourdomain.com *.yourdomain.com;:
    • none:允許沒有 Referer 字段的請求(如直接輸入 URL 的訪問)。
    • blocked:允許被代理或防火墻隱藏了 Referer 的請求。
    • yourdomain.com:允許來自 yourdomain.com 的請求。
    • *.yourdomain.com:允許來自 yourdomain.com 的所有子域名的請求。

if ($invalid_referer)

  • 如果請求的來源不符合 valid_referers 的規(guī)則,則變量 $invalid_referer 為 true。
  • return 403;
    • 返回 HTTP 狀態(tài)碼 403(禁止訪問)。

(2) 測試配置文件語法

在保存配置文件后,測試配置是否正確:

nginx -t

預(yù)期輸出:

nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful

如果有錯誤,檢查配置文件中的語法問題并修復(fù)。

(3) 重啟 Nginx 服務(wù)

重啟 Nginx 使配置生效:

systemctl restart nginx

3. 創(chuàng)建一個簡單的測試圖片

即使你的網(wǎng)頁沒有圖片資源,你可以手動添加一個測試圖片文件到 Nginx 的根目錄,方便驗(yàn)證防盜鏈功能。

步驟

  • 創(chuàng)建一個測試圖片文件: 在 Nginx 的根目錄下(通常是 /usr/share/nginx/html/ 或 /var/www/html/),創(chuàng)建一個簡單的圖片文件:
echo "Test Image" > /usr/share/nginx/html/test.jpg
  • 訪問測試圖片:
    • 在瀏覽器中輸入圖片的 URL(如 http://yourdomain.com/test.jpg)。
    • 確保圖片可以被正常訪問。
  • 從其他來源測試引用:
    • 在其他域名的網(wǎng)頁中嵌入這個圖片:
 <img src="http://yourdomain.com/test.jpg" />
  • 或者用 curl 模擬請求:
curl -e "http://otherdomain.com" http://yourdomain.com/test.jpg
//Nginx 應(yīng)該返回 403 錯誤。
 
curl -e "http://smqnz.com" 192.168.14.111/123.png
//可以訪問

如果配置正確,

總結(jié):

通過配置防盜鏈,可以有效保護(hù)網(wǎng)站的靜態(tài)資源,防止帶寬被惡意消耗。在實(shí)際應(yīng)用中,可以根據(jù)業(yè)務(wù)需求調(diào)整匹配規(guī)則和允許的域名,進(jìn)一步優(yōu)化配置。

以上就是Nginx配置防盜鏈保護(hù)靜態(tài)資源的詳細(xì)教程的詳細(xì)內(nèi)容,更多關(guān)于Nginx配置防盜鏈的資料請關(guān)注腳本之家其它相關(guān)文章!

相關(guān)文章

  • nginx報(bào)錯connect() failed(111: Connection refused)while connecting to upstream解決方法

    nginx報(bào)錯connect() failed(111: Connection refus

    本文主要介紹了nginx報(bào)錯connect() failed(111: Connection refused)while connecting to upstream解決方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-06-06
  • Nginx實(shí)現(xiàn)動態(tài)封禁IP的步驟指南

    Nginx實(shí)現(xiàn)動態(tài)封禁IP的步驟指南

    在日常的生產(chǎn)環(huán)境中,網(wǎng)站可能會遭遇惡意請求、DDoS 攻擊或其他有害的訪問行為,為了應(yīng)對這些情況,動態(tài)封禁 IP 是一項(xiàng)十分重要的安全策略,本篇博客將介紹如何通過 NGINX 實(shí)現(xiàn)動態(tài)封禁 IP,從配置到自動化的實(shí)現(xiàn)步驟,需要的朋友可以參考下
    2025-02-02
  • Nginx地址重定向的實(shí)現(xiàn)

    Nginx地址重定向的實(shí)現(xiàn)

    重定向 是將一個域名或地址指向另一個的方法,本文主要介紹了Nginx地址重定向的實(shí)現(xiàn),具有一定的參考價值,感興趣的可以了解一下
    2024-08-08
  • Nginx出現(xiàn)403 Forbidden問題的常見原因與解決

    Nginx出現(xiàn)403 Forbidden問題的常見原因與解決

    Nginx 返回 403 Forbidden 錯誤通常表示客戶端沒有權(quán)限訪問請求的資源,這種錯誤有許多可能的原因,本文將為大家介紹一下常見的原因和對應(yīng)的解決方法,希望對大家有所幫助
    2025-03-03
  • nginx部署前端dist包詳細(xì)圖文教程

    nginx部署前端dist包詳細(xì)圖文教程

    本文介紹了如何下載Nginx的穩(wěn)定版,并對下載后的壓縮包進(jìn)行解壓和配置,涵蓋了將文件放入html目錄、修改nginx.conf配置文件以及啟動Nginx的步驟,文中通過圖文介紹的非常詳細(xì),需要的朋友可以參考下
    2024-10-10
  • Nginx的HA高可用的搭建的實(shí)現(xiàn)

    Nginx的HA高可用的搭建的實(shí)現(xiàn)

    高可用是一種系統(tǒng)設(shè)計(jì)策略,旨在確保服務(wù)或應(yīng)用在面對硬件故障、軟件缺陷或任何其他異常情況時,仍能持續(xù)穩(wěn)定地運(yùn)行,本文主要介紹了Nginx的HA高可用的搭建,感興趣的可以了解一下
    2024-08-08
  • Nginx下Wordpress的永久鏈接實(shí)現(xiàn)(301,404等)

    Nginx下Wordpress的永久鏈接實(shí)現(xiàn)(301,404等)

    經(jīng)過多番測試,終于在nginx下實(shí)現(xiàn)了rewrite的功能,WrodPress的永久鏈接終于生效了
    2012-09-09
  • 使用nginx.exe時閃退的原因和解決方法

    使用nginx.exe時閃退的原因和解決方法

    最近使用老師給的nginx.exe時,點(diǎn)擊nginx.exe突然屏幕就閃一下,經(jīng)過一番排查,發(fā)現(xiàn)是端口被占用所導(dǎo)致的,所以本文就給大家講講端口被占用時的解決方法詳細(xì)步驟,需要的朋友可以參考下
    2023-07-07
  • Nginx?upstream使用教程

    Nginx?upstream使用教程

    本文主要介紹了Nginx?upstream使用教程,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2023-06-06
  • 一文弄懂Nginx的location匹配的實(shí)現(xiàn)

    一文弄懂Nginx的location匹配的實(shí)現(xiàn)

    這篇文章主要介紹了一文弄懂Nginx的location匹配的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-02-02

最新評論