PhpStudy开启Apache的gzip压缩功能

PhpStudy是一款非常方便的搭建PHP动态网站或者服务器的国产集成软件包,包含apache、mysql、php等。可以到其官方网站查看并且下载。

注意这里的PhpStudy是Apache+php解决方案,另外一个PhpFind是Nginx+php解决方案。由于Apache的使用较多些,以下的所有示例均是针对Apache,当然,只要是Apache,不管是自己独立安装,还是选择象我这样的懒人方式,集成式一键安装。配置均相同。

gzip是GNUzip的缩写,它是一个GNU自由软件的文件压缩程序。当服务器开启gzip压缩功能以后,当有人访问服务器的网站时,服务器将网页内容压缩后传输到来访的电脑浏览器,浏览器进行解压再显示出来。一般对纯文本内容可压缩到原大小的70%甚至更高。

以前介绍过如何开启SAE的gzip压缩功能,以及Typecho的gzip压缩,另外还有tomcat的gzip的压缩。本文主要讲述如何开启Apache的gzip压缩功能。

要让apache支持gzip功能,要用到deflate_Module和headers_Module。打开apache的配置文件httpd.conf,大约在105行左右,找到以下两行内容:(这两行不是连续在一起的)

#LoadModule deflate_module modules/mod_deflate.so   
#LoadModule headers_module modules/mod_headers.so  

然后将其前面的“#”注释删掉,表示开启gzip压缩功能。开启以后还需要进行相关配置。在httpd.conf文件的最后添加以下内容即可:

<IfModule deflate_module>  
    #必须的,就像一个开关一样,告诉apache对传输到浏览器的内容进行压缩   
    SetOutputFilter DEFLATE   
</IfModule>  

最少需要加上以上内容,才可以生gzip功能生效。由于没有做其它的额外配置,所以其它相关的配置均使用Apache的默认设置。这里说一下参数“DeflateCompressionLevel”,它表示压缩级别,值从1到9,值越大表示压缩的越厉害。

注意,这里要强调一个地方,我是通过搜索引擎找到相关文章进行设置的,而这些文章可能是来回复制的,有错误都不知道,如果你也按照那些做法去做,八层是出错,直接Apache都启动不了。究其原因,主要是有个参数不匹配。在上面去掉注释的“#”,即:

LoadModule deflate_module modules/mod_deflate.so  

这里以后会用到中间的名称,即deflate_module。后续开启gzip压缩中要使用该名称,即:

<IfModule deflate_module>  
      ......   
      ......   
</IfModule>  

这两个deflate_module必须一致。网络上其它很多文章,都是不一致的,所以直接报错。

下面是另一个典型配置,供参考。这里不建议将图片视频等多媒体文件进行gzip压缩,一般只压缩纯文本格式的文件,如.php、.txt、.html、.css、.js等。

<IfModule deflate_module>  
    #必须的,就像一个开关一样,告诉apache对传输到浏览器的内容进行压缩   
    SetOutputFilter DEFLATE   
  
    #压缩级别,1-9,9为最高   
    DeflateCompressionLevel 9      
  
    #不进行压缩的文件   
    SetEnvIfNoCase Request_URI \.(?:gif|jpe?g|png)$ no-gzip dont-vary #设置不对后缀gif,jpg,jpeg,png的图片文件进行压缩   
    SetEnvIfNoCase Request_URI \.(?:exe|t?gz|zip|bz2|sit|rar)$ no-gzip dont-vary #同上,就是设置不对exe,tgz,gz。。。的文件进行压缩   
    SetEnvIfNoCase Request_URI \.(?:pdf|mov|avi|mp3|mp4|rm)$ no-gzip dont-vary     
  
    #针对代理服务器的设置   
    <IfModule headers_moudle>  
    Header append vary User-Agent   
    </IfModule>  
</IfModule>
/usr/themes/NexTSun/static/images/yovisun-weixin-share.jpg
赞 (7) 分享
声明:原创文章,欢迎转载,请以 超链接 的形式注明 作者标题原始出处查看许可协议
标题PhpStudy开启Apache的gzip压缩功能 | 作者:YoviSun
地址https://www.yovisun.com/archive/phpstudy-apache-gzip.html
相关文章:
已有 4 条评论
  1. 匿名 匿名

    技术性文章啊,小白泪奔~

  2. 王晨浩 王晨浩

    弄好了,谢谢!

  3. andy andy

    很棒纯技术文章,我一开始设置的直接保存,Apache启动不了。

  4. good good

    很棒的文章,网上找了好多都不解决,这个一下搞定了。博主棒棒的,必须赞!! [龇牙]

添加新评论
选择表情
手机扫描二维码访问