溫馨提示×

CentOS Apache如何設置防盜鏈

小樊
61
2025-04-06 15:56:01
欄目: 智能運維

在CentOS系統中,使用Apache服務器設置防盜鏈可以通過配置.htaccess文件來實現。以下是詳細的步驟:

1. 創建或編輯 .htaccess 文件

首先,找到你想要保護的圖片或文件的目錄。通常,這個目錄會在網站的根目錄下或者某個特定的子目錄中。

cd /path/to/your/directory

然后,創建一個名為 .htaccess 的文件(如果它還不存在):

touch .htaccess

或者編輯現有的 .htaccess 文件:

nano .htaccess

2. 添加防盜鏈規則

.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:啟用重寫引擎。
  • RewriteCond %{HTTP_REFERER} !^http://(www\.)?yourdomain\.com [NC]:檢查HTTP請求頭中的Referer字段,如果不是來自指定的域名(例如yourdomain.com),則執行下一條規則。
  • RewriteRule \.(jpg|jpeg|png|gif)$ - [F,L]:拒絕訪問以.jpg, .jpeg, .png, .gif結尾的文件,并返回403 Forbidden狀態碼。

3. 允許特定域名訪問

如果你希望允許某些特定的域名訪問你的資源,可以在RewriteCond中添加這些域名:

RewriteEngine On

# 允許的域名列表
RewriteCond %{HTTP_REFERER} ^http://(www\.)?alloweddomain1\.com [NC]
RewriteCond %{HTTP_REFERER} ^http://(www\.)?alloweddomain2\.com [NC]

# 拒絕訪問
RewriteRule \.(jpg|jpeg|png|gif)$ - [F,L]

4. 保存并退出

保存 .htaccess 文件并退出編輯器。

5. 測試防盜鏈設置

最后,測試防盜鏈設置是否生效。你可以嘗試從一個不允許的域名訪問你的圖片或文件,看看是否返回了403 Forbidden狀態碼。

注意事項

  • 確保你的Apache服務器啟用了mod_rewrite模塊。你可以通過以下命令啟用它:

    sudo a2enmod rewrite
    sudo systemctl restart httpd
    
  • .htaccess文件的權限設置也很重要。確保它具有適當的讀寫權限:

    chmod 644 .htaccess
    

通過以上步驟,你應該能夠在CentOS系統上使用Apache服務器成功設置防盜鏈。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女