溫馨提示×

centos中apache2如何實現防盜鏈功能

小樊
49
2025-05-02 21:39:23
欄目: 智能運維

在 CentOS 系統中,Apache2 服務器可以通過配置 .htaccess 文件或直接修改 Apache 配置文件來實現防盜鏈功能。以下是兩種方法的詳細步驟:

方法一:使用 .htaccess 文件

  1. 創建或編輯 .htaccess 文件: 在你的網站根目錄下創建一個 .htaccess 文件(如果已經存在則直接編輯),并添加以下內容:

    <IfModule mod_rewrite.c>
        RewriteEngine On
        RewriteCond %{HTTP_REFERER} !^http://(www\.)?yourdomain\.com [NC]
        RewriteCond %{HTTP_REFERER} !^$
        RewriteRule \.(jpg|jpeg|png|gif)$ - [F,L]
    </IfModule>
    

    解釋:

    • RewriteEngine On:啟用重寫引擎。
    • RewriteCond %{HTTP_REFERER} !^http://(www\.)?yourdomain\.com [NC]:檢查請求的來源是否不是你的域名(忽略大小寫)。
    • RewriteCond %{HTTP_REFERER} !^$:確保請求的來源不是空。
    • RewriteRule \.(jpg|jpeg|png|gif)$ - [F,L]:如果條件匹配,則返回 403 Forbidden 狀態碼,并停止進一步處理。
  2. 保存并關閉 .htaccess 文件。

方法二:修改 Apache 配置文件

  1. 編輯 Apache 配置文件: 打開 Apache 的主配置文件,通常位于 /etc/httpd/conf/httpd.conf/etc/apache2/apache2.conf,具體路徑取決于你的 CentOS 版本。

    sudo vi /etc/httpd/conf/httpd.conf
    
  2. 添加防盜鏈配置: 在配置文件中找到 <Directory><Location> 塊,添加以下內容:

    <Directory "/var/www/html">
        RewriteEngine On
        RewriteCond %{HTTP_REFERER} !^http://(www\.)?yourdomain\.com [NC]
        RewriteCond %{HTTP_REFERER} !^$
        RewriteRule \.(jpg|jpeg|png|gif)$ - [F,L]
    </Directory>
    

    解釋:

    • RewriteEngine On:啟用重寫引擎。
    • RewriteCond %{HTTP_REFERER} !^http://(www\.)?yourdomain\.com [NC]:檢查請求的來源是否不是你的域名(忽略大小寫)。
    • RewriteCond %{HTTP_REFERER} !^$:確保請求的來源不是空。
    • RewriteRule \.(jpg|jpeg|png|gif)$ - [F,L]:如果條件匹配,則返回 403 Forbidden 狀態碼,并停止進一步處理。
  3. 保存并關閉配置文件。

  4. 重啟 Apache 服務: 使配置生效,需要重啟 Apache 服務:

    sudo systemctl restart httpd
    

    或者

    sudo systemctl restart apache2
    

注意事項

  • 確保你的服務器啟用了 mod_rewrite 模塊??梢酝ㄟ^以下命令啟用:

    sudo a2enmod rewrite
    

    或者

    sudo systemctl enable mod_rewrite
    
  • 防盜鏈配置中的域名應替換為你自己的域名。

  • 防盜鏈規則可以根據需要調整,例如添加更多的文件類型或使用更復雜的條件。

通過以上方法,你可以在 CentOS 系統中的 Apache2 服務器上實現防盜鏈功能。

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