zoukankan      html  css  js  c++  java
  • The server of Apache (三)——网页优化

      在企业中,部署apache后只采用默认的配置参数,会有很多问题,因为那些配置都是针对以前服务器配置的。

    一、网页压缩

      1、介绍

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

        能实现压缩功能的模块有mod_gzip模块和mod_deflate模块。 

        Apache1.x系列没有内建网页压缩技术,但是可以用额外的第三方mod_gzip模块来执行压缩

        Apache2.x官方开发的时候,就把网页压缩考虑进去,内建了mod_deflate这个模块,可以取代mod_gzip

        两者的区别:

        mod_gzip 对服务器的cpu的占用要高一些,高压缩比

        mod_deflate 压缩速度略快

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

      2、操作方法

        apachectl -t -D DUMP_MODULES | grep "mod_deflate"(没有过滤出来这个模块的话,则需要安装)

        cd /usr/src/httpd-2.2.17

        service httpd stop

        ./configue --enable-deflate

        make && make install

        vim   /usr/local/httpd/conf/httpd.conf

         添加行

        AddOutputFilterByType DEFLATE  text/html text/plain text/css text/xml text/javascript(代表对什么样的内容启用压缩)

        DeflateCompressionLevel 9(压缩级别)

        SetOutputFilter DEFLATE(代表启用deflate模块对本站点的输出进行gzip压缩)

        service httpd start

        为了方便对比,在启用mod_deflate模块前可使用抓包工具分析,如windows下的fiddler工具。

        压缩前的抓包工具显示:

        

        压缩后:

        

     

    二、网页缓存

        在通过mod_expire模块配置Apache,使网页能在客户端浏览器缓存一段时间,以避免重复请求。

        1、操作步骤(和网页压缩步骤一样):

        查看是否安装了mod_expire模块

        apachectl -t -D DUMP_MODULES | grep "expires"(如果没有expires_modules(static),则说明编译时没有安装mod_expires)

        service httpd stop

        ./configure --enable-expires……

        make && make install

        vim   /usr/local/httpd/conf/httpd.conf

        添加

        <IfModule mod_expires.c>

          ExpiresActive ON  (开启expires模块)

          ExpiresDefault"access plus 60 seconds"   (对于http协议下任意格式的文档(html,css,js,图片等都是60秒之后过期))

        </IfModule>

        apachectl -t

        service httpd start

        2、使用抓包工具测试

        设置缓存前

        

        设置缓存后

        

  • 相关阅读:
    UVA 110 Meta-Loopless Sorts(输出挺麻烦的。。。)
    使用bash判断PATH中是否存在某个路径
    Palindrome(poj3974)(manacher算法)
    Highcharts简介
    android 4.3源码编译
    Unsupervised Feature Learning and Deep Learning(UFLDL) Exercise 总结
    借助Ant工具,实现快速开发
    关于tableView的简单实例
    Matlab单元(Cell)数据的应用
    spring 资源加载使用说明
  • 原文地址:https://www.cnblogs.com/mangood/p/6011723.html
Copyright © 2011-2022 走看看