Rootop 服务器运维与web架构

Apache开启gzip压缩

| 暂无评论

系统环境为rh5.5,yum安装的httpd。
首先确定/usr/lib/httpd/modules下存在模块“mod_deflate.so”,默认yum安装都会存在。

编辑 /etc/httpd/conf/httpd.conf,确定存在下面一行配置参数:

LoadModule deflate_module modules/mod_deflate.so   //默认安装已经被加载。

在httpd.conf中添加以下三行:

AddOutputFilterByType DEFLATE text/html text/php text/png text/jpg text/plain text/css text/xml text/javascript
DeflateCompressionLevel 9
SetOutputFilter DEFLATE

第一行代表对什么样的内容启用GZIP压缩,第二行代表压缩级别,第三行代表启用deflate模块对AddOutputFilterByType 定义的类型的输出进行GZIP压缩。

(看网上资料写那么多,其实三行就足够,根据实际情况自行配置。反正我添加的三行跑的没问题。)
另外说句,其实gzip压缩对于html css xml之类的压缩效果好,对于图片的话···

完成以后大家可以用 http://seo.chinaz.com/写上你的域名,测试下压缩效果。

关于deflate模块参数可以参考下手册:
https://www.rootop.org/ApacheManual/Apache2.2_zh_CN/mod/mod_deflate.html
//来自网络的资料:
gzip原本是文件压缩格式,扩展名为.gz,HTTP协议用它来改进WEB应用程序性能,加快HTTP请求返回内容的下载速度,增加用户体验,降低网络带宽占用。
apache内置有mod_deflate模块来启用gzip功能,但假如安装apache的时候没有编译相关模块,就需要你手动安装一次,以启用它:
1.首先到你的apache源码目录,查找到mod_deflate.c文件
Linux下都可用locate mod_deflate.c
通常位置:apachehttpd源码目录/modules/filters/mod_deflate.c
2.进入上面找到的目录运行下面的命令:
/usr/local/apache/bin/apxs -i -c -a mod_deflate.c
注:apxs目录请参照您自己的机器,通常在apache安装目录的bin目录下
3.安装完成,到apache的modules目录看看是不是有了mod_deflates.so

可能碰到的问题:

apache启动后问题,日志里出现mod_deflate.so:undefined symbol:inflateEnd
解决:在LoadModule deflate_module modules/mod_deflate.so之前增加LoadFile /usr/local/lib/libz.so或LoadFile /usr/lib/libz.so,具体libz.so位置自己找一下。

原创文章,转载请注明。本文链接地址: https://www.rootop.org/pages/1011.html

作者:Venus

服务器运维与性能优化

发表回复