在CentOS上配置Apache2的防盜鏈(Hotlink Protection)可以通過多種方法實現,其中一種常見的方法是使用mod_rewrite
模塊。以下是一個基本的步驟指南:
mod_rewrite
模塊已啟用首先,確保mod_rewrite
模塊已啟用。你可以通過以下命令來啟用它:
sudo systemctl enable httpd
sudo systemctl start httpd
sudo yum install mod_rewrite
編輯你的Apache配置文件或.htaccess
文件來設置防盜鏈規則。通常,你可以在網站的根目錄下創建或編輯.htaccess
文件。
.htaccess
文件在你的網站根目錄下創建或編輯.htaccess
文件,并添加以下內容:
RewriteEngine On
# 允許的引用站點列表
RewriteCond %{HTTP_REFERER} !^http://(www\.)?yourdomain\.com [NC]
# 阻止所有其他引用站點的請求
RewriteRule \.(jpg|jpeg|png|gif)$ - [F,L]
在這個例子中:
RewriteEngine On
啟用重寫引擎。RewriteCond %{HTTP_REFERER} !^http://(www\.)?yourdomain\.com [NC]
檢查請求的引用站點是否不是你的域名(忽略大小寫)。RewriteRule \.(jpg|jpeg|png|gif)$ - [F,L]
阻止所有其他引用站點的請求,并返回403 Forbidden狀態碼。如果你更喜歡直接編輯Apache的主配置文件(例如/etc/httpd/conf/httpd.conf
或/etc/httpd/conf.d/yourdomain.conf
),可以添加以下內容:
<VirtualHost *:80>
ServerName yourdomain.com
DocumentRoot /var/www/html
<Directory /var/www/html>
RewriteEngine On
# 允許的引用站點列表
RewriteCond %{HTTP_REFERER} !^http://(www\.)?yourdomain\.com [NC]
# 阻止所有其他引用站點的請求
RewriteRule \.(jpg|jpeg|png|gif)$ - [F,L]
</Directory>
</VirtualHost>
保存文件后,重啟Apache服務以應用更改:
sudo systemctl restart httpd
嘗試從不同的站點訪問你的圖片資源,確保防盜鏈規則生效。如果一切配置正確,非授權站點的請求應該會被阻止并返回403狀態碼。
通過以上步驟,你可以在CentOS上配置Apache2的防盜鏈功能,保護你的圖片資源不被其他站點非法引用。