溫馨提示×

LNMP架構中Nginx如何配置防盜鏈

小樊
44
2025-06-12 21:08:33
欄目: 編程語言

在LNMP架構中,Nginx可以通過配置防盜鏈來限制其他網站直接引用你的圖片、視頻等資源。防盜鏈的基本原理是通過檢查HTTP請求頭中的Referer字段來判斷請求是否來自允許的域名。如果Referer不在允許的域名列表中,則拒絕訪問。

以下是一個基本的Nginx防盜鏈配置示例:

  1. 打開Nginx配置文件,通常位于/etc/nginx/nginx.conf/etc/nginx/sites-available/default。

  2. server塊中添加以下配置:

location ~* \.(jpg|jpeg|png|gif|ico|css|js)$ {
    valid_referers none blocked yourdomain.com www.yourdomain.com;
    if ($invalid_referer) {
        rewrite ^/ - [R=403,L];
    }
}

解釋:

  • location ~* \.(jpg|jpeg|png|gif|ico|css|js)$:匹配所有以.jpg, .jpeg, .png, .gif, .ico, .css, .js結尾的文件請求。
  • valid_referers none blocked yourdomain.com www.yourdomain.com;:設置允許的Referer。none表示不允許任何Referer,blocked表示允許被Nginx阻止的Referer,yourdomain.comwww.yourdomain.com是你允許的域名。
  • if ($invalid_referer):如果Referer無效,則執行以下操作。
  • rewrite ^/ - [R=403,L]:將無效Referer的請求重定向到403 Forbidden狀態碼,并停止處理后續配置。
  1. 保存配置文件并退出編輯器。

  2. 重新加載Nginx配置以使更改生效:

sudo nginx -s reload

現在,Nginx將根據配置的防盜鏈規則限制資源訪問。如果請求的資源被其他網站引用且Referer不在允許的域名列表中,用戶將收到403 Forbidden錯誤。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女