Apache的压缩与缓存-----网页优化
admin
2023-02-02 22:40:03
0次

一、Apache网页的压缩

定义:对apache服务器发布的网页内容进行压缩后再发送到客户端的浏览器。减少了网络传输用时,也加快了网页加载的速度。

mod_gzip 模块与mod_deflate 模块

1.两者均使用gzip压缩算法,运作原理类似
2.mod_deflate 压缩速度略快,而mod_gzip 的压缩比略高
3.mod_gzip 对服务器CPU的占用要高- -些
4.高流量的服务器,使用mod_deflate 可能会比mod_gzip 加载速
度更快

实验走起

1、代码步骤如下:

[root@localhost ~]# mkdir /aaa
[root@localhost ~]# mount.cifs //192.168.10.12/rpm /aaa
Password for root@//192.168.10.12/rpm:  
[root@localhost ~]# cd /aaa
[root@localhost aaa]# ls
LAMP
[root@localhost aaa]# cd LAMP/
[root@localhost LAMP]# ls
apr-1.6.2.tar.gz                  error.png
apr-util-1.6.0.tar.gz             ha.jpg
awstats-7.6.tar.gz                httpd-2.4.29.tar.bz2
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]# tar jxvf httpd-2.4.29.tar.bz2 -C /opt
[root@localhost LAMP]# tar zxvf apr-1.6.2.tar.gz -C /opt/
[root@localhost LAMP]# tar zxvf apr-util-1.6.0.tar.gz -C /opt
[root@localhost LAMP]# cd /opt/
[root@localhost opt]# ls
apr-1.6.2  apr-util-1.6.0  httpd-2.4.29  rh
[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]# yum install gcc gcc-c++ pcre pcre-devel zlib-devel expat-devel -y

[root@localhost opt]# cd httpd-2.4.29/
[root@localhost httpd-2.4.29]# ls
ABOUT_APACHE     CMakeLists.txt  INSTALL         NWGNUmakefile
acinclude.m4     config.layout   InstallBin.dsp  os
Apache-apr2.dsw  configure       LAYOUT          README
Apache.dsw       configure.in    libhttpd.dep    README.cmake
apache_probes.d  docs            libhttpd.dsp    README.platforms
ap.d             emacs-style     libhttpd.mak    ROADMAP
build            httpd.dep       LICENSE         server
BuildAll.dsp     httpd.dsp       Makefile.in     srclib
BuildBin.dsp     httpd.mak       Makefile.win    support
buildconf        httpd.spec      modules         test
CHANGES          include         NOTICE          VERSIONING
[root@localhost httpd-2.4.29]# ./configure --prefix=/usr/local/httpd --enable-so --enable-rewrite --enable-charset-lite --enable-cgi
[root@localhost httpd-2.4.29]# make
[root@localhost httpd-2.4.29]# make install

[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,搜索这个关键词
Listen 192.168.234.172:80
#Listen 80

/ServerName,搜索这个关键词
ServerName www.kgc.com:80

按大写字母G到末行,按o转下行插入

  AddOutputFilterByType DEFLATE text/html text/plain text/css text/xml text/javascript text/ipg text/png
  DeflateCompressionLevel 9
  SetOutputFilter DEFLATE

//修改结束后按Esc退出,输入:wq保存退出

[root@localhost conf]# /usr/local/httpd/bin/apachectl -t
Syntax OK
//验证语法是否正确

[root@localhost conf]# /usr/local/httpd/bin/apachectl start
[root@localhost conf]# netstat -ntap | grep 80
tcp       0      0 192.168.234.172:80       0.0.0.0:*        LISTEN      82881/httpd       [root@localhost conf]# ls
extra  httpd.conf  magic  mime.types  original
[root@localhost conf]# cd ..
[root@localhost httpd]# ls
bin    cgi-bin  error   icons    lib   man     modules
build  conf     htdocs  include  logs  manual
[root@localhost httpd]# cd htdocs/
[root@localhost htdocs]# ls
index.html
[root@localhost htdocs]# cat index.html 

It works!

[root@localhost htdocs]# cd /usr/local/httpd/bin/ [root@localhost bin]# ./apachectl -t -D DUMP_MODULES | grep "deflate" deflate_module (shared)

2、在/htdocs中添加进图片jpg,在index.html中输入,客户端通过IP访问浏览器,用fiddler进行捕捉。

[root@localhost bin]# cd /aaa/LAMP
[root@localhost LAMP]# ls
apr-1.6.2.tar.gz                  ha.jpg
apr-util-1.6.0.tar.gz             httpd-2.4.29.tar.bz2
awstats-7.6.tar.gz                lf.jpg
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
error.png
[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  lf.jpg
[root@localhost htdocs]# vim index.html 

It works!

//格式做以上更改,在当中插入图片,按Esc退出,输入:wq保存退出

Apache的压缩与缓存-----网页优化
Apache的压缩与缓存-----网页优化

结论:我们只要在网页中嵌入了图片或者视频这类格式文件时,网页会通过打压缩的方式再进行传输,传到对方的客户端之后在进行解压缩的识别

二、Apache网页的缓存

定义:将一部分经常不会变动或变动较少的页面缓存。下次浏览器访问这些页面时,不需要再次下载。提高了用户的访问速度,降低客户端的访问频率。
基于之前已经对apache的配置文件进行了相对应的设置,所以我们接下来只需要做如下更改:
1、代码如下:

[root@localhost htdocs]# vim   /etc/httpd.conf
在末行按o转下行插入以下内容

  ExpiresActive   On
  ExpiresDefault   "access plus 50 seconds"

//修改完成后按Esc退出,输入:wq保存退出

[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

2、验证,进行抓包测试
Apache的压缩与缓存-----网页优化
Apache的压缩与缓存-----网页优化

相关内容

热门资讯

空调连续工作多久需要停机休息 空调连续工作的时间取决于多个因素,包括空调的型号、功率、使用环境和维护情况等。一般来说,空调可以连续...
空调哪个符号是除湿的 空调除湿功能通常用一个水滴形状的符号表示。不同品牌和型号的空调遥控器可能会有所差异,但一般来说,除湿...
格力空调多长时间加一次氟利昂 1、一般情况下,空调对氟利昂的使用量是非常小的,所以在空调使用了四年左右的时候再考虑加也没问题。2、...
空调用多长时间需要加氟一次 一般情况下是五年。当出现以下这几种情况时,空调才需要加氟。1、空调的室内机和室外机各有两个接口,当接...
格调生活·C标思享荟:卡萨帝在... 9月12日的郑州龙湖金融岛,夜风轻拂,灯光璀璨。“C标时刻共传奇——卡萨帝思享荟暨20周年品牌盛典郑...
品牌价值破千亿、高端份额持续领... 9月12日,“C标时刻共传奇——卡萨帝思享荟暨20周年品牌盛典郑州站”在郑州龙湖金融岛举办。2026...
空调主板坏了修800还是换新的 空调主板坏了是修还是换新,需要考虑多个因素,以下是一些建议:1. 维修成本:如果维修费用较低,比如 ...
空调开多久需要休息多长时间 问题:空调开多久需要休息多长时间回答:1、在使用空调的过程中,一般空调开7~8个小时左右需要休息2~...
中央空调多长时间清洗一次 1、一般空调开机前清洗一次即可,空调开机中间时段再清洗一次,空调关机时清洗一次,这样比较合理。2、空...
中央空调氟利昂多久加一次 看空调制热和制冷程度,很多人的观点认为氟利昂必须一年放一次,其实这个观点是错误的,理解上面有点偏差,...