首页 > 代码库 > Apache网页压缩

Apache网页压缩

压缩功能概述
      配置 Apache 的网页压缩功能,是使用 Gzip 压缩算法来对 Apache 服务器发布的网页内容进行压缩后再传输到客户端浏览器。

网页压缩的优势
     加快网页加载的速度,改善用户的浏览体验
     降低网络传输带宽,服务器节省流量
     网页压缩有利于搜索引擎的抓取

网页压缩模块分类
       Apache 能实现网页压缩功能的模块有 mod_gzip 模块和 mod_deflate 模块。Apache1.x 系列没有内建的网页压缩技术,但可以使用额外的第三方 mod_gzip 模块来执行压缩。Apache 2.x 系列官方在发布的时候,就把网页压缩功能考虑进去,内建了 mod_deflate 这个模块,用于取代 mod_gzip 模块
技术分享

启用网页压缩功能

 [root@localhost ~]# 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
[root@localhost ~]# apachectl -t -D DUMP_MODULES | grep deflate //-t 选项可不加
Syntax OK
[root@localhost ~]# apachectl -D DUMP_MODULES | grep deflate
Syntax OK

发现未安装 deflate_module (static),重新编译安装

[root@localhost ~]# service httpd stop

[root@localhost ~]# cd /usr/src/httpd-2.2.31/

[root@localhost httpd-2.2.31]# ./configure --prefix=/usr/local/httpd/ --enable-so --enable-
rewrite --enable-charset-lite --enable-cgi --enable-deflate && make && make install

[root@localhost ~]# apachectl -D DUMP_MODULES | grep deflate
deflate_module (static)
Syntax OK

[root@localhost ~]# service httpd start

为了方便对比,在启用模块前,先使用 fiddler 工具抓包

技术分享 

配置网页的缓存时间

配置网页缓存时间概述 

       通过 mod_expires 模块配置 Apache,使网页能在客户端浏览器缓存一段时间,以避免重复请求,减轻服务端工作压力。

       启用 mod_expires 模块后,会自动生成页面头部信息中的 Expires 标签和 Cache-Control 标签,从而降低客户端的访问频率和次数,达到减少不必要的流量和增加访问速度的目的。

 

启用网页缓存功能

查看是否安装了 mod_expires 模块 

[root@localhost ~]# apachectl -D DUMP_MODULES | grep expires
Syntax OK

发现未安装 expires_module (static),重新编译安装

[root@localhost ~]# service httpd stop

[root@localhost ~]# cd /usr/src/httpd-2.2.31/

[root@localhost 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

[root@localhost ~]# apachectl -D DUMP_MODULES | grep expires
expires_module (static)
Syntax OK

[root@localhost ~]# service httpd start

为了方便对比,在启用模块前,先使用 fiddler 工具抓包

技术分享

 

修改配置文件启用缓存功能
在 httpd.conf 主配置文件最后加上如下内容

[root@localhost ~]# 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>

技术分享

 

Apache网页压缩