网页压缩和缓存实验
Apache压缩与缓存概述
Apache压缩实现网页压缩的功能模块有mod_gzip模块,mod_deflate模块,Apache 1.x,没有内建网页压缩技术,但可使用第三方mod_gzip模块执行压缩,Apache 2.x,在开发的时候,内建了mod_deflate这个模块,取代mod_gzip。
Apache缓存通过mod_expire模块配置Apache,使网页在客户端浏览器缓存一段时间,以避免重复请求。启用mod_expire模块之后,会自动生成页面头部信息中的expire标签和Cache-control标签,从而降低客户端的访问频率和次数,达到减少不必要的流量和增加访问速度的目的。
部署Apache压缩步骤
yum install -y \
> gcc \
> gcc-c++ \
> make \
> pcre-devel \
> expat-devel \
> perl
yum install -y zlib-devel #######安装压缩软件
cd httpd-2.4.29/
./configure \
> --prefix=/usr/local/httpd \
> --enable-so \
> --enable-rewrite \
> --enable-charset-lite \
> --enable-cig \
> --enable-deflate #######比起手工编译安装多一个deflate模块
make && make install
ln -s /usr/local/httpd/conf/httpd.conf /etc ########给配置文件创建软连接方便操作
vim /etc/httpd.conf
############开启三个模块#############################
LoadModule headers_module modules/mod_headers.so
LoadModule deflate_module modules/mod_deflate.so
LoadModule filter_module modules/mod_filter.so
##########在最末行添加deflate模块的控制字段#############
<IfModule mod_deflate.c>
AddOutputFilterByType DEFLATE text/html text/plain test/css text/xml text/javascript text/jpg text/png
DeflateCompressionLevel 9
SetOutputFilter DEFLATE
</IfModule>
/usr/local/httpd/bin/httpd -t 验证配置文件是否正确
Syntax OK
#########相当于systemctl start httpd######### 启用并验证模块
/usr/local/httpd/bin/httpd
#####################验证模块###########
/usr/local/httpd/bin/httpd -t -D DUMP_MODULES |grep "deflate"
deflate_module (shared)
##################或者##############################
cd /usr/local/httpd/bin/
./apachectl -t -D DUMP_MODULES |grep "deflate"
deflate_module (shared)
cd /usr/local/httpd/htdocs/ 在网页配置文件中加入照片并测试
使用抓包工具在headers中图片是gzip压缩格式
部署Apache缓存步骤
yum install -y \
> gcc \
> gcc-c++ \
> make \
> pcre-devel \
> expat-devel \
> perl \
>zlib-devel
cd httpd-2.4.29/
./configure \
> --prefix=/usr/local/httpd \
> --enable-so \
> --enable-rewrite \
> --enable-charset-lite \
> --enable-cig \
> --enable-deflate \ #######比起手工编译安装多一个deflate模块
> --enable-expires ###########缓存模块
make && make install
ln -s /usr/local/httpd/conf/httpd.conf /etc ########给配置文件创建软连接方便操作
LoadModule expires_module modules/mod_expires.so
###########在配置文件中的末尾添加##########
<IfModule mod_expires.c>
ExpiresActive On
ExpiresDefault "access plus 50 seconds"
</IfModule>
/usr/local/httpd/bin/httpd -t
Syntax OK
cd /usr/local/httpd/htdocs/
/usr/local/httpd/bin/httpd
/usr/local/httpd/bin/httpd -t -D DUMP_MODULES |grep "expires"
expires_module (shared)
##################或者##############################
cd /usr/local/httpd/bin/
./apachectl -t -D DUMP_MODULES |grep "expires"
expires_module (shared)
使用抓包工具验证缓存
在headers中会有expires