千家信息网

Apache网页优化之压缩与缓存

发表于:2025-02-05 作者:千家信息网编辑
千家信息网最后更新 2025年02月05日,Apache网页优化概述在企业中,部署Apache后只采用默认的配置参数,会引发网站很多问题,换言之默认配置是针对以前较低的服务器配置的,以前的配置已经不适用当今互联网时代为了适应企业需求,就需要考虑
千家信息网最后更新 2025年02月05日Apache网页优化之压缩与缓存

Apache网页优化概述

在企业中,部署Apache后只采用默认的配置参数,会
引发网站很多问题,换言之默认配置是针对以前较低的
服务器配置的,以前的配置已经不适用当今互联网时代
为了适应企业需求,就需要考虑如何提升Apache的性
能与稳定性,这就是Apache优化的内容

gzip介绍

■配置Apache的网页压缩功能,是使用gzip压缩算法来
对网页内容进行压缩后再传输到客户端浏览器
■作用
●降低了网络传输的字节数,加快网页加载的速度
●节省流量,改善用户的浏览体验
●gzip与搜索引擎的抓取工具有着更好的关系

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

mod_gzip 模块
moddeflate模块
Apache 1.x
●没有内建网页压缩技术,但可使用第三方mod
gzip 模块执行压缩
Apache 2.x
在开发的时候,内建了mod deflate 这个模块,取代mod gzip
mod gzip 模块与mod deflate 模块
●两者均使用gzip压缩算法,运作原理类似
●mod deflate 压缩速度略快,而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]# lsapr-1.6.2.tar.gz       cronolog-1.6.2-14.el7.x86_64.rpm  LAMP-php5.6.txtapr-util-1.6.0.tar.gz  Discuz_X2.5_SC_UTF8.zip           mysql-5.6.26.tar.gzawstats-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]# lsapr-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]# lsbin    cgi-bin  error   icons    lib   man     modulesbuild  conf     htdocs  include  logs  manual[root@localhost httpd]# cd conf[root@localhost conf]# lsextra  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 -tSyntax OK//验证语法是否正确[root@localhost bin]# ./apachectl start       //启动服务[root@localhost bin]# netstat -ntap | grep 80tcp        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即可访问到主页
最后打开fiddre软件进行抓包

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

[root@localhost bin]# cd /abc/[root@localhost LAMP]# lsapr-1.6.2.tar.gz                  fangdao.jpgapr-util-1.6.0.tar.gz             httpd-2.4.29.tar.bz2awstats-7.6.tar.gz                tupian.pngcronolog-1.6.2-14.el7.x86_64.rpm  mysql-5.6.26.tar.gzDiscuz_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]# lsindex.html  tupian.png[root@localhost htdocs]# vim index.html 

It works!

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

配置网页的缓存时间

■通过mod expire模块配置 Apache,使网页能在客户端
浏览器缓存一段时间,以避免重复请求
■启用mod
expire模块后, 会自动生成页面头部信息中
的Expires标签和Cache-Control标签,从而降低客户
端的访问频率和次数,达到减少不必要的流量和增加访
问速度的目的

■修改httpd.conf配置文件
●启用mod expires模块,并设置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里的浏览器进行抓包测试,此时我们可以看到我们设置的网页缓存的时间在头部信息中出现

配置 网页 模块 服务 文件 关键 关键词 内容 功能 测试 浏览 缓存 信息 图片 所在 注释 浏览器 软件 速度 搜索 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 图书借阅管理系统数据库设计代码 阿里云saas系统建站服务器 线切割软件开发公司 网络技术人员选拔 酷派ota服务器密码 软件开发岗位简历模板 数据库创建表 教案 软件开发部门 预算表 网络安全事故案例及分析 北京配天软件开发面试 单机免安装数据库 郑州大学网络安全专业怎么样 数据库四级相当于技术几级 《网络安全法》是一部 法律 腾讯网络安全堪比国防 软件开发服务合同下载 网络安全法违返规定 网络安全预防诈骗手抄报初中 账号可以更换服务器吗 软件开发 小米笔记本电脑 内蒙古大数据网络技术咨询商家 深圳3u服务器散热器厂商 云顶名胜世界做网络安全 深圳瑞亿网络技术有限公司 成都盟渡互联网科技有限公司 数据库在软件开发中的地位 崇明区咨询软件开发报价表 广播电视职业技能网络安全 数据库技术应用课程 白俄罗斯的网络安全
0