奔牛网>服务器>Apache>>Apache开启Gzip压缩设置方法及参数说明(mod_deflate方式)
2017年05月19日

Apache开启Gzip压缩设置方法及参数说明(mod_deflate方式)

GZIP的好处就不多说了,可以省带宽,还可以提高网站访问速度,基本上是居家建站必备了。
前一期我们介绍过nginx的开启方法,详见http://www.bnxb.com/nginx/26912.html
 
这里再详细介绍一下apache下的开启方法及配置参数
开启gzip会消耗额外cpu资源,Apache利用Gzip压缩算法进行压缩的模块有两种:mod_gzip 和mod_deflate。
目前主流浏览器两种压缩方式的解码都支持,因此都可以使用,apache新版内建了deflate模块,因此是建议开启deflate来作为gzip压缩方式,mod_gzip作为apache的第三方插件也是可以使用,这里不做介绍,使用mod_gzip的方式详见http://www.bnxb.com/apache/2017/051226914.html
 
假如你在安装apache的时候没有编译相关的模块,就需要手动安装一次,以启用它:
首先到apache目录,查找到mod_deflate.c文件 ,通常位置:apachehttpd源码目录/modules/filters/mod_deflate.c
进入上面找到的目录运行下面的命令:
/usr/local/apache2/bin/apxs -i -c -a mod_deflate.c
注:apxs目录请参照您自己的机器,通常在apache安装目录的bin目录下。
安装完成,到apache的modules目录看看是不是有了mod_deflates.so
 
httpd.conf中打开deflate_Module和headers_Module模块:
查看一下Apache配置文件httpd.conf中下面三个模块是否开启:
文件路径(/etc/httpd/conf/httpd.conf)(PHPnow配置的环境是在PHPnow\Apache-22\conf\httpd.conf)
 
LoadModule deflate_module modules/mod_deflate.so
LoadModule headers_module modules/mod_headers.so
LoadModule filter_module modules/mod_filter.so
 
 
如果前面有#删除即可开启,没有的话在最后补充上去
 
apache2.4 中 AddOutputFilterByType 命令已经移到mod_filter模块, 如果你在2.4版本使用,必须开启 mod_filter模块。因此这里将三个模块都开启了。
 
到这里GZIP支持就开启成功,然后就是配置参数,在apache配置文件httpd.conf最后添加,添加完重启apache:
service httpd restart
PHPnow是打开控制面板,输入23,回车即可
 
下面是一个配置的简单实例:
 
1、deflate_Module方式 
(1)严格匹配文件类型 
 
代码如下:
 
# mod_deflate: 
<ifmodule mod_deflate.c> 
DeflateCompressionLevel 6 #压缩率, 6是建议值. 
AddOutputFilterByType DEFLATE text/plain 
AddOutputFilterByType DEFLATE text/html 
AddOutputFilterByType DEFLATE text/php 
AddOutputFilterByType DEFLATE text/xml 
AddOutputFilterByType DEFLATE text/css 
AddOutputFilterByType DEFLATE text/javascript 
AddOutputFilterByType DEFLATE application/xhtml+xml 
AddOutputFilterByType DEFLATE application/xml 
AddOutputFilterByType DEFLATE application/rss+xml 
AddOutputFilterByType DEFLATE application/atom_xml 
AddOutputFilterByType DEFLATE application/x-javascript 
AddOutputFilterByType DEFLATE application/x-httpd-php 
AddOutputFilterByType DEFLATE image/svg+xml 
AddOutputFilterByType DEFLATE image/gif image/png image/jpe image/swf image/jpeg image/bmp 
# Don't compress images and other #排除不需要压缩的文件 
BrowserMatch ^Mozilla/4 gzip-only-text/html 
BrowserMatch ^Mozilla/4\.0[678] no-gzip 
BrowserMatch \bMSIE !no-gzip !gzip-only-text/html 
SetEnvIfNoCase Request_URI .(?:html|htm)$ no-gzip dont-varySetEnvIfNoCase 
#SetEnvIfNoCase Request_URI .(?:gif|jpe?g|png)$ no-gzip dont-vary 
SetEnvIfNoCase Request_URI .(?:exe|t?gz|zip|bz2|sit|rar)$ no-gzip dont-vary 
顶(0)
踩(0)
最新评论