基于之前的日志文件分割与日志文件分析,此次将为大家带来Apache静态资源的压缩以及缓存时间的设置。
本次实验使用软件包合集:链接:https://pan.baidu.com/s/1Ag3Sns8iH-J9W8cdtfjPPg请添加链接描述 提取码:qcog
一份原图虽然占用服务器资源并不多,但一旦进行高并发任务时,不把静态资源(例如:图片等)进行压缩,将会给服务器带来非常大的压力。
1、手工编译安装Apache
[root@localhost ~]# mount.cifs //192.168.10.181/LAMP-C7 /mnt //将软件包进行远程挂载
[root@localhost ~]# cd /mnt
[root@localhost mnt]# tar xjvf httpd-2.4.29.tar.bz2 -C /opt/
[root@localhost mnt]# tar zxf apr-1.6.2.tar.gz -C /opt/
[root@localhost mnt]# tar zxf apr-util-1.6.0.tar.gz -C /opt/
[root@localhost mnt]# cd /opt/
[root@localhost opt]# mv apr-1.6.2/ httpd-2.4.29/srclib/apr
[root@localhost opt]# mv apr-util-1.6.0/ httpd-2.4.29/srclib/apr-util
[root@localhost opt]# cd httpd-2.4.29/
[root@localhost httpd-2.4.29]# yum install \ //安装环境包
gcc \
gcc-c++ \
pcre \
pcre-devel \
zlib-devel \
expat-devel -y
[root@localhost httpd-2.4.29]# ./configure \
--prefix=/usr/local/httpd \
--enable-so \
--enable-deflate \
--enable-expires \
--enable-rewrite \
--enable-charest-lite \
--enable-cgi
[root@localhost httpd-2.4.29]# make && make install //编译&编译安装
2、配置http主配置文件
[root@localhost httpd-2.4.29]# cd /usr/local/httpd/
[root@localhost httpd]# vim conf/httpd.conf //配置主配置文件
在配置文件,搜索`/LoadModule deflate_`
LoadModule deflate_ module modules/mod_ deflate.so //开启,将头部的#符号删除
wq保存退出
搜索`/Listen`,设置监听地址
Listen 192.168.116.145:80 ##设置监听地址
#Listen 80
搜索`/ServerName`,设置域名
ServerName www.kgc.com:80 ##设置域名
分别搜索`/deflata`和`/headers`,开启相应模块
LoadModule deflate_module modules/mod_deflate.so ##启用压缩模块
LoadModule headers_module modules/mod_headers.so ##启用头部模块
按G定位末行,添加
LoadModule filter_module modules/mod_filter.so
<IfModule mod_deflate.c>
AddOutputFilterByType DEFLATE text/html text/plain text/css text/xml test/java
script text/jpg text/png ##支持压缩类型
DeflateCompressionLevel 9 ##高压缩比
SetOutputFilter DEFLATE ##默认过滤器加载
</IfModule>
wq保存退出
3、开启服务,并进行站点编辑
[root@localhost httpd]# cd /usr/local/httpd/bin/
[root@localhost bin]# ./apachectl start //开启服务
[root@localhost bin]# netstat -atnp | grep "80"
[root@localhost bin]# cd /usr/local/httpd/htdocs //进入http默认站点中
[root@localhost htdocs]# vim index.html //对网页进行编辑
<html><body><h2>It works!</h2>
<img src="kali.jpg"/> ##将图片放到网页中
</body></html>
注:图片需要事先放在站点中
4、结果验证
- 通过mod_expire模块配置Apache,使用网页能在客户端浏览器缓存一段时间,以避免重复请求
- 启用mod_expire模块后,会自动生成页面头部信息中的Expires标签和Cache-Control标签,从而降低客户端的访问频率和次数,达到减少不必要的流量和增加访问速度的目的
PS:此项实验基于上面的实验基础上进行
1、对主配置文件进行配置
[root@localhost httpd]# vim /conf/http.conf
搜索`/LoadModule expires_`,开启模块
LoadModule expires_module modules/ mod_expires.so //开启缓存模块
按G定位末行
<IfModule mod_expires.c>
ExpiresActive On
ExpiresDefault "access plus 10 seconds" //设置10s缓存
</IfModule>
wq保存退出
2、开启服务
[root@localhost httpd]# cd bin/
[root@localhost bin]# ./apachectl start //开启服务
[root@localhost bin]# systemctl stop firewalld.service
[root@localhost bin]# setenforce 0
[root@localhost bin]# ./apachectl -t -D DUMP_MODULES | grep "expires" //查看模块开启状态
expires_module (shared)
3、结果验证
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。