CentOS7 Apache調優之開啓deflate壓縮模塊

啓用Apache的deflate模塊,可以開啓壓縮功能,減小網站傳輸時的帶寬。


apache需要編譯安裝方式,以/usr/local/apache爲apache的安裝目錄,以源碼包/usr/local/src/httpd-2.4.33爲例




首先查看/usr/local/apache/bin/apachectl -M    ###查看裏面的模塊是否有deflate模塊,也可以過濾一下/usr/local/apache/bin/apachectl -M | grep deflate



若有則到httpd.conf下面開啓,如果沒有顯示,或者用grep過濾後顯示Syntax OK,則說明模塊沒有安裝。



以動態共享模塊方式(DSO)編譯安裝deflate模塊


/usr/local/apache/bin/apxs -c -i -a /usr/local/src/httpd-2.4.33/modules/filters/mod_deflate.c         #其中前面部分是安裝好的apache軟件裏面的apxs程序,後面是apache的源碼安裝包裏面的deflate壓縮模塊



apxs程序編譯選項:

-c 表示執行編譯模塊操作

-i  表示執行安裝模塊操作

-a 表示自動添加一個LoadModule行到httpd.conf文件中,以激活該模塊


注意:如果提示-bash: /apache/bin/apxs: /replace/with/path/to/perl/interpreter: bad interpreter: No such file or directory。請安裝perl,perl-devel

yum install perl perl-devel

安裝完成後修改apxs腳本:   vi /usr/local/apache/bin/apxs,將第一行“#!/replace/with/path/to/perl/interpreter -w”修改爲#!/usr/bin/perl -w,wq保存退出,然後再次編譯該模塊



安裝完成後,vi /usr/local/apache/conf/httpd.conf中查看該模塊是否安裝及激活

LoadModule deflate_module            modules/mod_deflate.so


注意:如果啓動apache提示httpd: Syntax error on line 105 of /apache/conf/httpd.conf: Cannot load modules/mod_deflate.so into server: /apache/modules/mod_deflate.so: undefined symbol: inflate

則說明deflate模塊沒有找到zlib的庫,可以先安裝zlib,zlib-devel

yum install zlib zlib-devel

然後手動在httpd.conf下 加入以下命令

LoadFile /usr/lib64/libz.so   ##libz.so爲deflate壓縮模塊所需要的庫文件


<ifmodule mod_deflate.c>

    DeflateCompressionLevel 9  

    SetOutputFilter DEFLATE

    DeflateFilterNote Input instream

    DeflateFilterNote Output outstream

    DeflateFilterNote Ratio ratio

    AddOutputFilterByType    DEFLATE    text/html    text/plain    text/xml    text/css    text/javascript   application/xhtml+xml   application/xml    application/rss+xml     application/atom_xml    application/x-javascript      application/x-httpd-php     image/svg+xml     image/gif    image/png      image/jpe    image/swf    image/jpeg    image/bmp    application/javascript     

</ifmodule>


DeflateCompressionLevel 9 ###壓縮等級(1-9),等級越大效率越高,但同時消耗的CPU也高,根據具體情況調優,也可以設置爲6來平衡CPU及壓縮質量

AddOutputFilterByType  ##僅壓縮限制特定的MIME類型文件







發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章