Linux下apache2及模块mod_deflate等安装和配置

安装apache

一、wget http://archive.apache.org/dist/httpd/httpd-2.2.13.tar.gzphp

二、在安装目录css

先让你们看看实际效果,请看下图10点中的流量,开启deflate压缩后后,今天的10点,带宽是3MB,没有开启deflate压缩的昨天上午10 点,带宽是4.3MB。很明显,节约了30%的流量开支。若是图片,zip等下载文件较少,纯html页面,php页面较多,能够节约50%以上的带宽。 html

压缩比率测试结果(某两个页面):

Original Size: 30 KBapache

Gzipped Size: 8 KB服务器

Data Savings: 73.33% 首页是html页面,节约了73%的带宽,速度提升了3倍多!app


Original Size: 37 KB工具

Gzipped Size: 10 KB测试

Data Savings: 72.97% 这也是html页面,节约了72%的带宽,速度提升了3倍多!xml

开启了实时压缩传输,在服务器负载方面,CPU负载提升了0.3左右,能够接受。htm


如何安装apache的deflate压缩?

下面收集整理的mod_deflate安装和配置经验和过程,适合apache2.x

Apache2 推荐使用 moddeflate 压缩,modgzip适合apache1.x

关于moddeflate的详细内容,能够参考http://httpd.apache.org/docs/2.0/mod/moddeflate.html

  1. 查找模块deflate

    find /backup/soft/httpd-2.2.4 -name mod_deflate.c

    cd /backup/soft/httpd-2.2.4/modules/filters

  2. 安装mod_deflate

    /usr/local/apache224/bin/apxs -i -c -a 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 。 若是是新安装apache,直接加上 --enable-headers --enable-deflate 便可

  3. 配置mod_deflate

    vi /usr/local/apache224/conf/httpd.conf LoadModule deflatemodule modules/moddeflate.so 此LoadModule须要放在libphp5.so以后 <IfModule mod_deflate.c> DeflateCompressionLevel 7 AddOutputFilterByType DEFLATE text/html text/plain text/xml application/x-httpd-php AddOutputFilter DEFLATE css js

压缩等级的调整有两种说法,不过懒得研究了,默认等级是6,890k的文件压缩出来的数据和最高的9级只差1k,并且9级须要更多的CPU时间,用默认的6级就能够了。

另外,有个Real-Time Compression Check工具,能够检测某个URL是不是压缩传输的。好像这家公司作IIS下的zip压缩程序,因此弄了这么个在线工具。只要输入你的地址,回车,就能够看到服务器类型、是不是压缩传输以及压缩前和压缩后的大小比较。大多数状况下html代码都能压缩到1/4~1/3,gzip压缩传输仍是很不错的。

相关文章
相关标签/搜索