在Ubuntu上使用Apache2實現防盜鏈,可以通過配置.htaccess
文件來實現。以下是詳細的步驟:
.htaccess
文件首先,找到你想要保護圖片、視頻或其他資源的目錄,并在該目錄下創建一個名為 .htaccess
的文件(如果已經存在,則直接編輯)。
cd /path/to/your/directory
nano .htaccess
在 .htaccess
文件中添加以下內容:
RewriteEngine On
# 檢查Referer頭
RewriteCond %{HTTP_REFERER} !^$
RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?yourdomain\.com [NC]
# 如果Referer不符合條件,返回403 Forbidden
RewriteRule \.(jpg|jpeg|png|gif|swf|mp4|avi|mov)$ - [F]
解釋:
RewriteEngine On
:啟用重寫引擎。RewriteCond %{HTTP_REFERER} !^$
:檢查Referer頭是否為空。RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?yourdomain\.com [NC]
:檢查Referer頭是否不是來自你的域名(忽略大小寫)。RewriteRule \.(jpg|jpeg|png|gif|swf|mp4|avi|mov)$ - [F]
:如果Referer頭不符合條件,返回403 Forbidden狀態碼。保存 .htaccess
文件并退出編輯器。
將一些圖片或視頻鏈接放到其他網站上,然后嘗試訪問這些鏈接。如果來源網站不是你的域名,你應該會看到403 Forbidden錯誤。
.htaccess
文件進行重寫。你可以在Apache配置文件中檢查以下設置:<Directory /path/to/your/directory>
AllowOverride All
</Directory>
RewriteCond
中包含 https://
。RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?(yourdomain\.com|anotherdomain\.com) [NC]
通過以上步驟,你就可以在Ubuntu上的Apache2服務器上實現基本的防盜鏈功能。