Nginx开启gzip压缩功能

在Nginx安装完成以后,咱们能够开启Gzip压缩功能,这里Nginx默认只能对text/html类型的文件进行压缩。下面的指令为开启Gzip的指令:javascript

gzip on;
gzip_http_version 1.0;
gzip_disable "MSIE [1-6].";
gzip_types text/plain application/x-javascript text/css text/javascript;

若是要可以是Nginx开启图片压缩功能,在配置文件中添加以下代码:php

gzip_types text/plain application/x-javascript text/css text/javascript application/x-httpd-php image/jpeg image/gif image/png;

这里须要注意一下:css

1.在gzip_http_version的默认值是1.1,就是说对HTTP/1.1协议的请求才会进行gzip压缩。
若是使用了proxy_pass进行反向代理,那么nginx和后端的upstream server之间是用HTTP/1.0协议通讯的
若是使用nginx经过反向代理作Cache Server,前端的nginx没有开启gzip,且后端的nginx上未设置gzip_http_version为1.0,那么Cache的url将不会被gzip压缩。html

2.gzip_disable的设置是禁用IE6的gzip压缩
IE6的某些版本对gzip的压缩支持不是很好,会形成页面的假死。
对img进行gzip后会形成IE6的假死,把对img的gzip压缩去掉后就正常了。
为了确保其它的IE6版本不出问题,因此加上了gzip_disable配置项。前端

gzip_min_length 1000;

设置容许压缩的页面最小字节数,页面字节数从header头中的Content-Length中进行获取。java

默认值是0,无论页面多大都压缩。
建议设置成大于1k的字节数,小于1k可能会越压越大。 即: gzip_min_length 1024nginx

gzip_proxied expired no-cache no-store private auth;

Nginx做为反向代理的时候启用,开启或者关闭后端服务器返回的结果,匹配的前提是后端服务器必需要返回包含”Via”的 header头。后端

 

自用版以下服务器

 

gzip on;  
gzip_min_length  1k;  
gzip_buffers     4 16k;  
gzip_http_version 1.0;  
gzip_comp_level 2;  
gzip_types       text/plain application/x-javascript text/css application/xml application/x-httpd-php image/jpeg image/gif image/png;  
gzip_vary on; 
gzip_disable "MSIE [1-6]\.";
相关文章
相关标签/搜索