linux apache 缓存清理,Apache网页优化之压缩与缓存

Apache网页优化概述

在企业中,部署Apache后只采用默认的配置参数,会

引发网站很多问题,换言之默认配置是针对以前较低的

服务器配置的,以前的配置已经不适用当今互联网时代

为了适应企业需求,就需要考虑如何提升Apache的性

能与稳定性,这就是Apache优化的内容

gzip介绍

■配置Apache的网页压缩功能,是使用gzip压缩算法来

对网页内容进行压缩后再传输到客户端浏览器

■作用

●降低了网络传输的字节数,加快网页加载的速度

●节省流量,改善用户的浏览体验

●gzip与搜索引擎的抓取工具有着更好的关系

Apache实现网页压缩的功能模块包括

mod_gzip 模块

moddeflate模块

Apache 1.x

●没有内建网页压缩技术,但可使用第三方mod gzip 模块执行压缩

Apache 2.x

在开发的时候,内建了moddeflate 这个模块,取代mod gzip

modgzip 模块与mod deflate 模块

●两者均使用gzip压缩算法,运作原理类似

●moddeflate 压缩速度略快,而mod _gzip 的压缩比略高mod_gzip对服务器CPU的占用要高一些

高流量的服务器,使用mod_deflate可能会比mod_gzip加载速

度更快

配置网页压缩功能

首先检查是否安装了mod_deflate模块

●执行apachectl -t -D DUMP_MODULES命令

●如果输出中没有deflate_module (static),说明编译时没有安装

mod_deflate模块

若没有安装则要重新编译安装

●./configure --enable-deflate...

●make && make install

■在配置httpd.conf中配置开启gzip功能

●AddOutputFilterByType DEFLATE texthtml text/plain text/css

text/xml text/javascript

●DeflateCompressionL evel

●SetOutputFilter DEFL ATE

■第一行代表对什么样的内容启用gzip压缩

■第二行代表压缩级别

■第三行代表启用deflate模块对本站点的输出进行gzip压缩

Apache压缩实操

安装Apache服务

远程挂载软件包文件夹到本地并查看

[root@localhost ~]# mkdir /abc //创建挂载点

[root@localhost ~]# mount.cifs //192.168.100.7/LAMP-C7 /abc/ //挂载

Password for root@//192.168.100.10/LAMP-C7:

[root@localhost ~]# cd /abc/

[root@localhost abc]# ls

apr-1.6.2.tar.gz cronolog-1.6.2-14.el7.x86_64.rpm LAMP-php5.6.txt

apr-util-1.6.0.tar.gz Discuz_X2.5_SC_UTF8.zip mysql-5.6.26.tar.gz

awstats-7.6.tar.gz httpd-2.4.29.tar.bz2 php-5.6.11.tar.bz2

解压源码包到/opt目录下,并移动httpd组件包

[root@localhost abc]# tar zxvf apr-1.6.2.tar.gz -C /opt/

[root@localhost abc]# tar zxvf apr-util-1.6.0.tar.gz -C /opt/

[root@localhost abc]# tar jxvf httpd-2.4.29.tar.bz2 -C /opt/

[root@localhost abc]# cd /opt/

[root@localhost opt]# ls

apr-1.6.2 apr-util-1.6.0 httpd-2.4.29 httpd.txt rh

[root@lamp opt]# mv apr-1.6.2/ httpd-2.4.29/srclib/apr [root@lamp opt]# mv apr-util-1.6.0/ httpd-2.4.29/srclib/apr-util

安装实验环境必须的软件包

yum -y install

gcc

gcc-c++

make

pcre-devel

zlib-devel

expat-devel

pcre

perl

配置安装目录及模块

[root@lamp opt]#cd /opt/httpd-2.4.29/

./configure

--prefix=/usr/local/httpd

--enable-so

--enable-deflate

--enable-expires

--enable-rewrite

--enable-charset-lite

--enable-cgi

编译安装Apache

make && make install

修改Apache配置文件

[root@localhost httpd-2.4.29]# cd /usr/local/httpd/

[root@localhost httpd]# ls

bin cgi-bin error icons lib man modules

build conf htdocs include logs manual

[root@localhost httpd]# cd conf

[root@localhost conf]# ls

extra httpd.conf magic mime.types original

[root@localhost conf]# vim httpd.conf

[root@localhost conf]# ln -s /usr/local/httpd/conf/httpd.conf /etc/httpd.conf

[root@localhost conf]# vim /etc/httpd.conf

/deflate搜索关键词查找关键词所在行

LoadModule deflate_module modules/mod_deflate.so //去除注释开启服务

/headers搜索关键词查找关键词所在行

LoadModule headers_module modules/mod_headers.so //去除注释开启服务

/filter搜索关键词查找关键词所在行

LoadModule filter_module modules/mod_filter.so //去除注释开启服务

使用/Listen查找关键词所在位置

注释ipv6,开启ipv4并将监听端口改为本机地址

Listen 192.168.131.129:80

#Listen 80

使用/ServerName查找关键词,并做如下修改

ServerName www.kgc.com:80

在文件末行插入以下内容

AddOutputFilterByType DEFLATE text/html text/plain text/css text/xml text/javascript text/ipg text/png

DeflateCompressionLevel 9

SetOutputFilter DEFLATE

[root@localhost conf]# /usr/local/httpd/bin/apachectl -t

Syntax OK

//验证语法是否正确

[root@localhost bin]# ./apachectl start //启动服务

[root@localhost bin]# netstat -ntap | grep 80

tcp 0 0 192.168.35.131:80 0.0.0.0:* LISTEN 35887/httpd

[root@localhost bin]# systemctl stop firewalld.service //关闭防火墙

[root@localhost bin]# setenforce 0 //关闭增强型安全功能

[root@localhost bin]# ./apachectl -t -D DUMP_mooules | grep "expire"

Syntax OK

使用测试机win10进行测试,在浏览器输入网址192.168.131.129即可访问到主页

bd0c17704477f25a6551e2ead2c1c7e0.png最后打开fiddre软件进行抓包

共享文件夹中的图片复制到网页文件目录下,并将图片添加到网页中

[root@localhost bin]# cd /abc/

[root@localhost LAMP]# ls

apr-1.6.2.tar.gz fangdao.jpg

apr-util-1.6.0.tar.gz httpd-2.4.29.tar.bz2

awstats-7.6.tar.gz https://blog.51cto.com/14449528/tupian.png

cronolog-1.6.2-14.el7.x86_64.rpm mysql-5.6.26.tar.gz

Discuz_X2.5_SC_UTF8.zip php-5.6.11.tar.bz2

[root@localhost LAMP]# cp lf.jpg /usr/local/httpd/htdocs/ //把图片复制到网页文件夹

[root@localhost LAMP]# cd /usr/local/httpd/

[root@localhost httpd]# cd htdocs/

[root@localhost htdocs]# ls

index.html https://blog.51cto.com/14449528/tupian.png

[root@localhost htdocs]# vim index.html

It works!

tupian.png

现在我们再次使用测试机进行访问就可以看到添加的图片,我们通过抓包软件可以看到有图片的抓取信息中有在端口处进行gzip压缩处理信息

e1e6692e7d1b37ad66d36bda9d095d88.png

配置网页的缓存时间

■通过modexpire模块配置 Apache,使网页能在客户端

浏览器缓存一段时间,以避免重复请求

■启用mod expire模块后, 会自动生成页面头部信息中

的Expires标签和Cache-Control标签,从而降低客户

端的访问频率和次数,达到减少不必要的流量和增加访

问速度的目的

■修改httpd.conf配置文件

●启用modexpires模块,并设置http协议下任意格式的文档均60

秒后过期

expires.c>

ExpiresActive On

ExpiresDefault "access plus 60 seconds"

■重启httpd服务

Apache缓存实操

在配置完Apache网页压缩在前提下再进行如下配置

配置Apache配置文件

[root@localhost htdocs]# vim /etc/httpd.conf

在配置文件末行插入以下内容

ExpiresActive On

ExpiresDefault "access plus 50 seconds"

检查语法正确性并重启服务

[root@localhost htdocs]# pwd

/usr/local/httpd/htdocs

[root@localhost htdocs]# cd /usr/local/httpd/

[root@localhost httpd]# cd bin/

[root@localhost bin]# ./apachectl -t //检查语法

Syntax OK

[root@localhost bin]# ./apachectl stop

[root@localhost bin]# ./apachectl start

我们在用测试机win10里的浏览器进行抓包测试,此时我们可以看到我们设置的网页缓存的时间在头部信息中出现

bb521e5a3f50e99f411614d009ec7086.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值