您的位置:首页 > 运维架构 > Apache

apache 2.2.15中配置mod_deflate

2013-07-01 16:25 393 查看
在apache 2下,已经使用了mod_deflate去代替1中的 gzip压缩了,
对css,js,图片,PHP文件等都可以做一个很好的压缩,节省了带宽,但会稍微加大点
CPU的影响,下面小结下:

1 安装
/usr/local/apache2/bin/apxs -i -c -a APACHE2代码目录/modules/filters/mod_deflate.c
mod_deflate.c

apxs命令参数说明:
-i 此选项表示需要执行安装操作,以安装一个或多个动态共享对象到服务器的modules目录中。
-a 此选项自动增加一个LoadModule行到httpd.conf文件中,以激活此模块,或者,如果此行已经存在,则启用之。
-A 与 -a 选项类似,但是它增加的LoadModule命令有一个井号前缀(#),即此模块已经准备就绪但尚未启用。
-c 此选项表示需要执行编译操作。它首先会编译C源程序(.c)files为对应的目标代码文件(.o),然后连接这些目标代码和files中其余的目标代码文件(.o和.a),以生成动态共享对象dsofile 。如果没有指定 -o 选项,则此输出文件名由files中的第一个文件名推测得到,也就是默认为mod_name.so 。

安装完后,会在apche2的modules目录下,有mod_deflate.SO的文件

2 在httpd.conf中增加如下
LoadModule deflate_module modules/mod_deflate.so
<ifmodule mod_deflate.c>
DeflateCompressionLevel 9
AddOutputFilterByType DEFLATE text/html text/plain text/xml application/x-httpd-php
AddOutputFilter DEFLATE html htm xml php css js
</ifmodule>

默认等级是6,而且9级需要更多的CPU时间,用默认的6级就可以了。

要注意的是,在apache 2.2.15中,我用httpd -l看,居然发现mod_deflat已经内置了,所以其实就不用再在httpd.conf中增加loadmodule了,否则会说出错的
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: