在企业中,部署apache后只采用默认的配置参数,会有很多问题,因为那些配置都是针对以前服务器配置的。
一、网页压缩
1、介绍
配置apache的网页压缩功能,是使用Gzip压缩算法来对apache服务器发布的网页内容进行压缩后再传输到客户端浏览器,这样做,降低了网络传输的字节数,加快网页的加载速度,节省流量,改善用户体验,并且使用gzip与搜索引擎的抓取工具有着更好的关系。
能实现压缩功能的模块有mod_gzip模块和mod_deflate模块。
Apache1.x系列没有内建网页压缩技术,但是可以用额外的第三方mod_gzip模块来执行压缩
Apache2.x官方开发的时候,就把网页压缩考虑进去,内建了mod_deflate这个模块,可以取代mod_gzip
两者的区别:
mod_gzip 对服务器的cpu的占用要高一些,高压缩比
mod_deflate 压缩速度略快
高流量的服务器,使用mod_deflate 可能会比mod_gzip加载速度更快
2、操作方法
apachectl -t -D DUMP_MODULES | grep "mod_deflate"(没有过滤出来这个模块的话,则需要安装)
cd /usr/src/httpd-2.2.17
service httpd stop
./configue --enable-deflate
make && make install
vim /usr/local/httpd/conf/httpd.conf
添加行
AddOutputFilterByType DEFLATE text/html text/plain text/css text/xml text/javascript(代表对什么样的内容启用压缩)
DeflateCompressionLevel 9(压缩级别)
SetOutputFilter DEFLATE(代表启用deflate模块对本站点的输出进行gzip压缩)
service httpd start
为了方便对比,在启用mod_deflate模块前可使用抓包工具分析,如windows下的fiddler工具。
压缩前的抓包工具显示:
压缩后:
二、网页缓存
在通过mod_expire模块配置Apache,使网页能在客户端浏览器缓存一段时间,以避免重复请求。
1、操作步骤(和网页压缩步骤一样):
查看是否安装了mod_expire模块
apachectl -t -D DUMP_MODULES | grep "expires"(如果没有expires_modules(static),则说明编译时没有安装mod_expires)
service httpd stop
./configure --enable-expires……
make && make install
vim /usr/local/httpd/conf/httpd.conf
添加
<IfModule mod_expires.c>
ExpiresActive ON (开启expires模块)
ExpiresDefault"access plus 60 seconds" (对于http协议下任意格式的文档(html,css,js,图片等都是60秒之后过期))
</IfModule>
apachectl -t
service httpd start
2、使用抓包工具测试
设置缓存前
设置缓存后