nginx+squid+gzip压缩解决方案
2011-10-03 14:49
316 查看
现象:nginx0.7.26 squid 2.7.9,发现压缩的页面失效,但如果跳过squid,页面压缩是有效的。
Google了一下,主要是两篇文章,两种说法:
1.说是修改squid 的 “broken_vary_encoding all”
由于文章乱转载,一时不能确定出处,所以出处可能是: http://zys.8800.org/index.php/archives/282 2. nginx默认是使用的动态的gzip压缩,而squid2系列还不支持,所以要重新编译nginx (./configure –with-http_gzip_static_module)。
出处:http://bbs.chinaunix.net/viewthread.php?tid=1329820
有趣的是:这个原文出处的指出的原文是:http://zys.8800.org/?p=267
但已经404错误了。
经过我的测试:第2种说法是成立的,第1种不成立,但为什么原作者却保留了一篇错误的文章,把正确的反而删了?
如果这篇文章到这里就结束了,肯定会被各位看官扔鸡蛋了,一点原创性的东西都没有,就来骗稿费(真没有稿费…)
所以我对原文给出的nginx配置做了一些优化和测试:
下面是原文给出的nginx配置:
gzip on
gzip_static on;
gzip_http_version 1.0;
gzip_proxied any;
gzip_disable “MSIE [1-6].”;
gzip_comp_level 9;
gzip on后面少一个”;”
经过测试IE6是可以完美支持gzip的,无论是在http 1.0还是1.1的请求下,所以把IE6目前这个最广泛的浏览器排除在外,实在不解,所以我改成:gzip_disable “MSIE [1-5].”;
增加 gzip_types 因为nginx默认只对”text/html“压缩,但同样是文本文件的xml,css,js也是需要压缩的,所以增加这一行
gzip_types text/plain application/xml application/x-javascript text/css ;
详情可以参考: http:// href="http://www.ha97.com/tag/wiki" target=_blank>wiki.nginx.org/NginxHttpGzipModule
我对gzip_comp_level进行了测试,分别从1到9,9虽然压缩比率是 最大的,但如果不适当,消耗过多的服务器资源,也是适得其反哦。我使用了一个大概是103KB的文本文件,分别使用1-9进行测试
所以我选择了压缩比为4 。
经过几天的测试下来,启用压缩后,带宽降低为以前的一半,如下图:
Google了一下,主要是两篇文章,两种说法:
1.说是修改squid 的 “broken_vary_encoding all”
由于文章乱转载,一时不能确定出处,所以出处可能是: http://zys.8800.org/index.php/archives/282 2. nginx默认是使用的动态的gzip压缩,而squid2系列还不支持,所以要重新编译nginx (./configure –with-http_gzip_static_module)。
出处:http://bbs.chinaunix.net/viewthread.php?tid=1329820
有趣的是:这个原文出处的指出的原文是:http://zys.8800.org/?p=267
但已经404错误了。
经过我的测试:第2种说法是成立的,第1种不成立,但为什么原作者却保留了一篇错误的文章,把正确的反而删了?
如果这篇文章到这里就结束了,肯定会被各位看官扔鸡蛋了,一点原创性的东西都没有,就来骗稿费(真没有稿费…)
所以我对原文给出的nginx配置做了一些优化和测试:
下面是原文给出的nginx配置:
gzip on
gzip_static on;
gzip_http_version 1.0;
gzip_proxied any;
gzip_disable “MSIE [1-6].”;
gzip_comp_level 9;
gzip on后面少一个”;”
经过测试IE6是可以完美支持gzip的,无论是在http 1.0还是1.1的请求下,所以把IE6目前这个最广泛的浏览器排除在外,实在不解,所以我改成:gzip_disable “MSIE [1-5].”;
增加 gzip_types 因为nginx默认只对”text/html“压缩,但同样是文本文件的xml,css,js也是需要压缩的,所以增加这一行
gzip_types text/plain application/xml application/x-javascript text/css ;
详情可以参考: http:// href="http://www.ha97.com/tag/wiki" target=_blank>wiki.nginx.org/NginxHttpGzipModule
我对gzip_comp_level进行了测试,分别从1到9,9虽然压缩比率是 最大的,但如果不适当,消耗过多的服务器资源,也是适得其反哦。我使用了一个大概是103KB的文本文件,分别使用1-9进行测试
压缩前 | 压缩比率 | 压缩后 |
103KB | 1 | 27KB |
103KB | 2 | 26KB |
103KB | 3 | 26KB |
103KB | 4 | 24KB |
103KB | 5 | 24KB |
… | … | … |
103KB | 9 | 23KB |
经过几天的测试下来,启用压缩后,带宽降低为以前的一半,如下图:
相关文章推荐
- squid配合nginx的gzip压缩的完美解决方案
- squid配合nginx的gzip压缩的完美解决方案
- nginx 开启 gzip 压缩
- nginx之gzip压缩
- Nginx启用Gzip压缩js无效的原因
- Nginx安装,Nginx静态缓存,Nginx Gzip压缩,Nginx负载均衡,Nginx方向代理,Nginx+Tomcat+Redis做session共享
- nginx 配置gzip压缩
- nginx开启GZIP来压缩网页
- Nginx开启Gzip压缩,大幅提高页面加载速度
- Nginx启用gzip压缩测试工具
- Nginx开启gzip压缩
- Nginx开启gzip压缩大幅提高页面加载速度
- nginx的一个配置,nginx gzip压缩,nginx静态缓存,nginx负载均衡,nginx限制ip
- nginx的gzip压缩功能参数介绍(ngx_http_gzip_module)
- nginx之gzip压缩
- nginx 开启 gzip压缩的一个忽略地方
- tomcat和nginx的gzip压缩
- nginx配置gzip压缩页面
- Nginx gzip压缩、expires缓存时间
- nginx、apache与tomcat开启gzip压缩