在Ubuntu上配置Apache防盜鏈,可以通過修改Apache的配置文件來實現。以下是詳細的步驟:
如果你還沒有安裝Apache,可以使用以下命令進行安裝:
sudo apt update
sudo apt install apache2
你可以使用mod_rewrite
模塊來創建防盜鏈規則。首先,確保mod_rewrite
模塊已經啟用:
sudo a2enmod rewrite
然后重啟Apache服務以應用更改:
sudo systemctl restart apache2
編輯你的網站配置文件。通常,這些文件位于/etc/apache2/sites-available/
目錄下。例如,如果你的網站配置文件是yourdomain.com.conf
,你可以使用以下命令編輯它:
sudo nano /etc/apache2/sites-available/yourdomain.com.conf
在<VirtualHost>
塊中添加以下內容:
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html
# 其他配置...
<Directory /var/www/html>
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
# 防盜鏈規則
RewriteEngine On
RewriteCond %{HTTP_REFERER} !^http://(www\.)?yourdomain\.com [NC]
RewriteCond %{HTTP_REFERER} !^$
RewriteRule \.(jpg|jpeg|png|gif)$ - [F,L]
# 其他配置...
</VirtualHost>
在這個例子中:
RewriteEngine On
啟用重寫引擎。RewriteCond %{HTTP_REFERER} !^http://(www\.)?yourdomain\.com [NC]
檢查HTTP_REFERER是否不是來自你的域名(不區分大小寫)。RewriteCond %{HTTP_REFERER} !^$
確保HTTP_REFERER不是空的。RewriteRule \.(jpg|jpeg|png|gif)$ - [F,L]
如果條件匹配,則返回403 Forbidden狀態碼,并停止進一步處理。保存文件并退出編輯器(在nano中,按Ctrl+X
,然后按Y
確認保存,最后按Enter
)。
最后,重啟Apache服務以應用新的配置:
sudo systemctl restart apache2
你可以通過訪問你的網站并嘗試從其他域名加載圖片來測試防盜鏈是否生效。如果防盜鏈規則正確,你應該會看到403 Forbidden錯誤。
通過以上步驟,你可以在Ubuntu上成功配置Apache防盜鏈。