压缩功能概述
配置 Apache 的网页压缩功能,是使用 Gzip 压缩算法来对 Apache 服务器发布的网页内容进行压缩后再传输到客户端浏览器。
网页压缩的优势
加快网页加载的速度,改善用户的浏览体验
降低网络传输带宽,服务器节省流量
网页压缩有利于搜索引擎的抓取
网页压缩模块分类
Apache 能实现网页压缩功能的模块有 mod_gzip 模块和 mod_deflate 模块。Apache1.x 系列没有内建的网页压缩技术,但可以使用额外的第三方 mod_gzip 模块来执行压缩。Apache 2.x 系列官方在发布的时候,就把网页压缩功能考虑进去,内建了 mod_deflate 这个模块,用于取代 mod_gzip 模块
启用网页压缩功能
[[email protected] ~]# apachectl -D DUMP_MODULES
Loaded Modules:
core_module (static)
authn_file_module (static)
authn_default_module (static)
authz_host_module (static)
authz_groupfile_module (static)
authz_user_module (static)
authz_default_module (static)
auth_basic_module (static)
……
Syntax OK
[[email protected] ~]# apachectl -t -D DUMP_MODULES | grep deflate //-t 选项可不加
Syntax OK
[[email protected] ~]# apachectl -D DUMP_MODULES | grep deflate
Syntax OK
发现未安装 deflate_module (static),重新编译安装
[[email protected] ~]# service httpd stop
[[email protected] ~]# cd /usr/src/httpd-2.2.31/
[[email protected] httpd-2.2.31]# ./configure --prefix=/usr/local/httpd/ --enable-so --enable-
rewrite --enable-charset-lite --enable-cgi --enable-deflate && make && make install
[[email protected] ~]# apachectl -D DUMP_MODULES | grep deflate
deflate_module (static)
Syntax OK
[[email protected] ~]# service httpd start
为了方便对比,在启用模块前,先使用 fiddler 工具抓包
配置网页的缓存时间
配置网页缓存时间概述
通过 mod_expires 模块配置 Apache,使网页能在客户端浏览器缓存一段时间,以避免重复请求,减轻服务端工作压力。
启用 mod_expires 模块后,会自动生成页面头部信息中的 Expires 标签和 Cache-Control 标签,从而降低客户端的访问频率和次数,达到减少不必要的流量和增加访问速度的目的。
启用网页缓存功能
查看是否安装了 mod_expires 模块
[[email protected] ~]# apachectl -D DUMP_MODULES | grep expires
Syntax OK
发现未安装 expires_module (static),重新编译安装
[[email protected] ~]# service httpd stop
[[email protected] ~]# cd /usr/src/httpd-2.2.31/
[[email protected] httpd-2.2.31]# ./configure --prefix=/usr/local/httpd
/ --enable-so --enable-rewrite --enable-charset-lite --enable-cgi --enable-deflate --enable-
expires && make && make install
[[email protected] ~]# apachectl -D DUMP_MODULES | grep expires
expires_module (static)
Syntax OK
[[email protected] ~]# service httpd start
为了方便对比,在启用模块前,先使用 fiddler 工具抓包
修改配置文件启用缓存功能
在 httpd.conf 主配置文件最后加上如下内容
[[email protected] ~]# vim /usr/local/httpd/conf/httpd.conf
423 <IfModule mod_expires.c>
424 ExpiresActive On // 开启网页缓存功能
425 ExpiresDefault "access plus 60 seconds" //http 协议下任的文档都是 60 秒之后过期
426 </IfModule>