在CentOS系統中,使用Apache服務器設置防盜鏈可以通過配置.htaccess
文件來實現。以下是詳細的步驟:
.htaccess
文件首先,找到你想要保護圖片的目錄,并在該目錄下創建一個名為 .htaccess
的文件(如果已經存在,則直接編輯)。
cd /path/to/your/directory
touch .htaccess
nano .htaccess
在 .htaccess
文件中添加以下內容:
RewriteEngine On
# 允許的域名列表
RewriteCond %{HTTP_REFERER} !^http://(www\.)?yourdomain\.com [NC]
RewriteCond %{HTTP_REFERER} !^https://(www\.)?yourdomain\.com [NC]
# 不允許訪問的文件類型
RewriteRule \.(jpg|jpeg|png|gif)$ - [F,L]
解釋:
RewriteEngine On
:啟用URL重寫引擎。RewriteCond %{HTTP_REFERER} !^http://(www\.)?yourdomain\.com [NC]
:檢查HTTP請求頭中的Referer
字段,如果不是來自指定的域名(例如yourdomain.com
),則執行下一條規則。RewriteCond %{HTTP_REFERER} !^https://(www\.)?yourdomain\.com [NC]
:同上,但針對HTTPS請求。RewriteRule \.(jpg|jpeg|png|gif)$ - [F,L]
:如果請求的文件是圖片類型(如.jpg
, .jpeg
, .png
, .gif
),則返回403 Forbidden狀態碼,并停止進一步處理。保存文件并退出編輯器。
嘗試從不同的域名訪問受保護的圖片,確保只有來自指定域名的請求能夠成功訪問圖片。
mod_rewrite
模塊。你可以通過以下命令啟用它:sudo a2enmod rewrite
sudo systemctl restart httpd
通過以上步驟,你可以在CentOS系統上使用Apache服務器設置防盜鏈,保護你的圖片資源不被未經授權的網站引用。