解決 apache error 指定網路名稱不再可用 “an unknown filter was not added: DEFLATE”的問題

來源:互聯網
上載者:User

今天突然發現網站訪問不了了,到伺服器上看apache還是啟動狀態,重啟後就可以正常訪問了。
查看apache的錯誤記錄檔發現有很多下面的錯誤資訊:
指定網路名稱不再可用
[error] an unknown filter was not added: DEFLATE

這個錯誤是由於虛擬機器主機設定檔中使用了DEFLATE,但apache卻沒有使用mod_deflate模組導致的。

比如虛擬機器主機的配置中有:

        <Location />
            AddOutputFilterByType DEFLATE text/html text/xml text/plain
        </Location>

ok,找到原因後,就好解決了,讓apache載入mod_deflate模組即可。

Apache2 推薦使用 mod_deflate 壓縮,mod_gzip 適合apache1.x。

1. 尋找模組 deflate
find /home/test/httpd-2.0.50 -name mod_deflate.c

2. 安裝 mod_deflate
cd /home/test/httpd-2.0.50/modules/filters
/usr/local/apache2/bin/apxs  -i -c -a /home/test/httpd-2.0.50/modules/filters/mod_deflate.c   

apxs命令參數說明:
-i  此選項表示需要執行安裝操作,以安裝一個或多個動態共用對象到伺服器的modules目錄中。
-a  此選項自動增加一個LoadModule行到httpd.conf檔案中,以啟用此模組,或者,如果此行已經存在,則啟用之。
-c  此選項表示需要執行編譯操作。它首先會編譯C來源程式(.c)files為對應的目標代碼檔案(.o),然後串連這些目標代碼和files中其餘的目標代碼檔案(.o和.a),    以產生動態共用對象dsofile 。如果沒有指定 -o 選項,則此輸出檔案名由files中的第一個檔案名稱推測得到,也就是預設為mod_name.so 。
 
如果是新安裝apache,直接加上  --enable-headers  --enable-deflate 即可.    

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.