zoukankan      html  css  js  c++  java
  • Apache开启gzip压缩

    1. 为什么要进行gzip压缩?

    服务器设置 gzip 压缩是 web 开发中很普遍的做法。使用gzip压缩后可以使需要加载的文件大小缩小到原来的1/4左右(最大压缩级别)。然后在客户端解压即可。

    2.如何在Apache中开启gzip压缩服务?

    wamp为例:

    2.1 找到Apache中的httpd.conf文件,比如我的路径在D:wampinapacheapache2.4.35confhttpd.conf

    2.2 在编辑器中打开httpd.conf文件,找到deflate_Module和headers_Module这两个模块。去掉注释开启服务。(大概在第120行和130行左右)

    #LoadModule deflate_module modules/mod_deflate.so
    #LoadModule headers_module modules/mod_headers.so
    我测试过#LoadModule headers_module modules/mod_headers.so这个模块即使不修改也能实现gzip压缩服务。但很多资料都说这两行要同时去掉注释,不然网页显示不正常。

    2.3 开启上面的服务后在httpd.conf文件最后加上下面代码,然后重启Apache就行了:

    ## 使用<IfModule deflate_module> 和 <IfModule mod_deflate.c> 经过测试没什么区别

    <IfModule deflate_module>
      # 就像一个开关一样,告诉 Apache 对传输到浏览器的内容进行压缩
      SetOutputFilter DEFLATE
      # 压缩级别 9是最高级 1是最低级,不建议使用太高的压缩比,这样会对CPU产生太大的负担
      DeflateCompressionLevel 9
    </IfModule>

    2.4 注意,完成上面的步骤就可以实现gzip压缩了。但是上面的压缩是对所有的文件都进行了压缩,但在实际的开发过程中并不需要对所有文件都进行压缩,比如PDF 、图片、音乐文档之类的这些本身都已经高度压缩格式,重复压缩的作用不大,反而可能会因为增加CPU的处理时间及浏览器的渲染问题而降低性能。所以就没必要再通过Gzip压缩。

    3. 设置过滤指定文件或者对指定文件进行压缩

    3.1 对图片等特殊文件不进行 gzip 压缩处理:

    <IfModule mod_deflate.c>
        # 告诉 apache 对传输到浏览器的内容进行压缩
        SetOutputFilter DEFLATE
        # 压缩等级 9 最低是1,不建议按最大级别进行压缩,压缩率过高会占更多CPU资源
        DeflateCompressionLevel 9
        # 设置不对后缀gif,jpg,jpeg,png的图片文件进行压缩
        SetEnvIfNoCase Request_URI .(?:gif|jpe?g|png)$ no-gzip dont-vary
    </IfModule>

    3.2 指定文件进行压缩

    <IfModule mod_deflate.c>
        # 压缩等级 9
        DeflateCompressionLevel 9
        # 压缩类型 html、xml、php、css、js 面的文件MIME类型可以根据自己情况添加
        AddOutputFilterByType DEFLATE text/html text/plain text/xml application/x-javascript application/x-httpd-php
        AddOutputFilter DEFLATE js css
    </IfModule>

    4. 备注

    参考: 

    如何使用gzip压缩:https://www.cnblogs.com/zichi/p/5030877.html

    gzip和deflate压缩:https://blog.csdn.net/xjbclz/article/details/52474114

  • 相关阅读:
    OSPF
    【今日CS 视觉论文速览】 24 Jan 2019
    【今日CS 视觉论文速览】Wed, 23 Jan 2019
    【今日CS 视觉论文速览】 21 Jan 2019
    【Processing学习笔记】安装与入门
    【今日CS 视觉论文速览】Part2, 18 Jan 2019
    【今日CS 视觉论文速览】Fri, 18 Jan 2019
    【今日CS 视觉论文速览】Thu, 17 Jan 2019
    【今日CS 视觉论文速览】Part2, 16 Jan 2019
    【今日CS 视觉论文速览】Wed, 16 Jan 2019
  • 原文地址:https://www.cnblogs.com/codebook/p/10344214.html
Copyright © 2011-2022 走看看