在Ubuntu上設置Apache防盜鏈,可以通過配置Apache的.htaccess
文件來實現。以下是詳細的步驟:
.htaccess
文件首先,找到你想要保護圖片、視頻或其他資源的目錄。通常,這些資源位于網站的public_html
目錄下。
cd /var/www/html/your-site-directory
然后,創建一個名為.htaccess
的文件(如果它還不存在),或者編輯現有的文件。
nano .htaccess
在.htaccess
文件中添加以下內容來設置防盜鏈規則。你可以根據需要調整RewriteCond
和RewriteRule
參數。
# 防盜鏈規則
RewriteEngine On
# 允許的域名列表
RewriteCond %{HTTP_REFERER} !^http://(www\.)?yourdomain\.com [NC]
RewriteCond %{HTTP_REFERER} !^https://(www\.)?yourdomain\.com [NC]
# 拒絕訪問
RewriteRule \.(jpg|jpeg|png|gif|swf|flv)$ - [F,L]
解釋:
RewriteEngine On
:啟用重寫引擎。RewriteCond %{HTTP_REFERER} !^http://(www\.)?yourdomain\.com [NC]
:檢查HTTP請求頭中的Referer
字段,如果不是來自指定的域名,則執行下一條規則。RewriteCond %{HTTP_REFERER} !^https://(www\.)?yourdomain\.com [NC]
:同上,但適用于HTTPS請求。RewriteRule \.(jpg|jpeg|png|gif|swf|flv)$ - [F,L]
:拒絕訪問以指定擴展名結尾的文件,并返回403 Forbidden狀態碼。保存文件并退出編輯器。
Ctrl + X
Y
Enter
為了確保防盜鏈規則生效,你可以嘗試從不同的域名訪問受保護的資源。如果規則配置正確,你應該會收到403 Forbidden錯誤。
.htaccess
文件進行重寫。你可以在/etc/apache2/apache2.conf
或/etc/apache2/sites-available/your-site.conf
文件中檢查以下配置:<Directory /var/www/html/your-site-directory>
AllowOverride All
</Directory>
RewriteCond
中同時包含HTTP和HTTPS的規則。通過以上步驟,你應該能夠在Ubuntu上成功設置Apache防盜鏈。