apache之mod_gzip压缩
yahoo前端开发工程师提出了14条优化网站性能的规则,其规则4就明确提出了应该将响应的数据进行压缩后,再传到客户端,这样将近压缩70%的数据内容,也就是100KB的页面如果经过压缩最终传输的内容只有30KB。
最近看了国内几大网站,特别是几大搜索引擎界面,均采取了对响应内容进行了压缩。
正好这段时间在做对首页界面的响应优化,先前我们的首页没有经过gzip压缩,所以原始大小有11KB,经过压缩后测试,响应内容减少到了4KB,压缩掉差不多64%,如果再对所有的CSS和JS进行压缩,最近响应内容会减少很多。
配置gzip的模块最终取决于apache的版本,在apache1.x的版本中,使用mod_gzip,而apache2.x则使用mod_deflate.
apache2.x压缩通过mod_deflate来进行,尽管该模块的名字是这样,但它实际上是使用gzip来进行压缩。
基于目前已经是2009年,服务器基本上都已升级至apache2.x,所以这里我们只说mod_defalte.
这个模块在2.x的版本中,就已经自带了,不像mod_gzip,不是apache自身的模块,所以只需要在编译apache时,加上
--enable-deflate即可.
然后在apache配置文件中,添加
OutputFilterByType DEFLATE text/html text/plain text/xml text/css application/x-javascript
意思是对html xml css 和javascript都进行压缩。
然后启动服务器即可。
明显mod_deflate的配置要比mod_gzip方便很多。
然后通过抓包工具或者firebug就能看见服务器的响应信息如下图

图中的
Content-Encoding gzip
则表明响应内容已经是通过gzip压缩过,也就是通过浏览器你们要通过gzip算法来解压数据。
机器人 2009-02-24 11:59 于 北京


