一聚教程网:一个值得你收藏的教程网站

最新下载

热门教程

apache和nigx中GZIP开启方法介绍

时间:2022-06-30 17:57:48 编辑:袖梨 来源:一聚教程网

如何查看自己的网站已经开启gzip了?

方法-:

通过在线的工具比如(站长之家)查询,比如的我的博客开启了在查询就如图:QQ截图

 

apache和nigx中GZIP开启方法介绍

 

方法二:

通过浏览器的审查元素或者firebug之类工具查看服务器返回的header是否包含了“gzip”

如图:

apache和nigx中GZIP开启方法介绍


如何开启呢?


要让apache支持gzip功能,要用到deflate_Module和headers_Module。打开apache的配置文件httpd.conf,大约在100行左右,找到以下两行内容:(这两配置隔个好几行)

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

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


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


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

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


LoadModule deflate_module modules/mod_deflate.so

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

  
    ......
    ......


这两个deflate_module必须一致。网络上其它很多文章,都是不一致的,所以直接报错。我之前学的时候就是比较坑

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

因为图片等资源压缩的话,除非你有一个强大的服务器。


  
    #必须的,就像一个开关一样,告诉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   
  
    
  
    #针对代理服务器的设置 
  
   
  
    Header append vary User-Agent 
  
   

  


nginx开启gzip压缩

1)Vim打开Nginx配置文件

vim /usr/local/nginx/conf/nginx.conf


2)找到如下一段,进行修改

#开启Gzip
gzip on;
#不压缩临界值,大于1K的才压缩,一般不用改


gzip_min_length 1k;gzip_buffers 4 16k;
#gzip_http_version 1.0;
#压缩级别,1-10,数字越大压缩的越好,时间也越长


gzip_comp_level 4;
#进行压缩的文件类型

gzip_types text/plain application/x-javascript text/css application/xml text/javascript application/x-httpd-php image/jpeg image/gif image/png;
#跟Squid等缓存服务有关,on的话会在Header里增加"Vary: Accept-Encoding"


gzip_vary off;
#IE6不压缩


gzip_disable "MSIE [1-6].";

总结一下:

开启gzip的优点:

节省带宽。

提高页面加载速度快。

适合中小网站或者idc虚拟主机使用

开启gzip的缺点:

会消耗cpu资源

对流量大的网站,不建议开启的。gzip会占用cpu资源太多,且回收机制不是太好

对的图片和视频的压缩,几乎在实际情况不能使用。局限在的只能压缩html,js文件

热门栏目