gzipon;#决定是否开启gzip模块,on表示开启,off表示关闭;
gzip_min_length1k;#设置允许压缩的页面最小字节(从header头的Content-Length中获取),当返回内容大于此值时才会使用gzip进行压缩,以K为单位,当值为0时,所有页面都进行压缩。建议大于1k
gzip_buffers416k;#设置gzip申请内存的大小,其作用是按块大小的倍数申请内存空间,param2:int(k)后面单位是k。这里设置以16k为单位,按照原始数据大小以16k为单位的4倍申请内存
gzip_http_version1.1;#识别http协议的版本,早起浏览器可能不支持gzip自解压,用户会看到乱码
gzip_comp_level2;#设置gzip压缩等级,等级越底压缩速度越快文件压缩比越小,反之速度越慢文件压缩比越大;等级1-9,最小的压缩最快但是消耗cpu
gzip_typestext/plainapplication/x-javascripttext/cssapplication/xml;#设置需要压缩的MIME类型,非设置值不进行压缩,即匹配压缩类型
gzip_varyon;#启用应答头"Vary:Accept-Encoding"
nginx做为反向代理时启用,off(关闭所有代理结果的数据的压缩),expired(启用压缩,如果header头中包括"Expires"头信息),no-cache(启用压缩,header头中包含"Cache-Control:no-cache"),
no-store(启用压缩,header头中包含"Cache-Control:no-store"),private(启用压缩,header头中包含"Cache-Control:private"),no_last_modefied(启用压缩,header头中不包含
"Last-Modified"),no_etag(启用压缩,如果header头中不包含"Etag"头信息),auth(启用压缩,如果header头中包含"Authorization"头信息)
(IE5.5和IE6SP1使用msie6参数来禁止gzip压缩)指定哪些不需要gzip压缩的浏览器(将和User-Agents进行匹配),依赖于PCRE库
#如下:修改nginx配置文件/usr/local/nginx/conf/nginx.conf
[root@localhost~]将以下配置放到nginx.conf的http{...}区域中
gzip_min_length10k;#设置允许压缩的页面最小字节数;这里表示如果文件小于10个字节,就不用压缩,因为没有意义,本来就很小.
gzip_buffers416k;#设置压缩缓冲区大小,此处设置为4个16K内存作为压缩结果流缓存
gzip_http_version1.1;#压缩版本
gzip_comp_level2;#设置压缩比率,最小为1,处理速度快,传输速度慢;9为最大压缩比,处理速度慢,传输速度快;这里表示压缩级别,可以是0到9中的任一个,级别越高,压缩就越小,节省了带宽资源,但同时也消耗CPU资源,所以一般折中为6
gziptypestext/csstext/xmlapplication/javascript;#制定压缩的类型,线上配置时尽可能配置多的压缩类型!

gzipvaryon;cat/data/nginx/conf/nginx.conf
gzip_typestext/plainapplication/x-javascripttext/cssapplication/xmltext/javascriptapplication/x-httpd-phpapplication/javascriptapplication/json;
gzip_disable"MSIE[1-6]\.";
}
如果不开启Gzip压缩功能(即注释掉Gzip的相关配置),查看某个图片大小
[root@external-lb02~]#ll-h/data/web//www/test.bmp
-rw-r--r--1rootroot453K3月1418:43/data/web//www/test.bmp
如下可知,文件没有被压缩,文件传输大小还是400多K
如果开启Nginx的Gzip压缩功能(即打开Gzip的相关配置),然后再次访问test.bmp图片,发现压缩后的该图片文件传输大小只有200多K!
通过上面测试对比,发现Nginx开启Gzip压缩功能后,定义的gziptype的文件在传输时的大小明显变小,这样这会大大提高nginx访问性能.
[root@fvtlb02~]#curl-I-H"Accept-Encoding:gzip,deflate""http://fvtvfc-web.kevin.com/service-worker.js"
Date:Mon,26Nov201802:19:16GMT
Content-Type:application/javascript;charset=utf-8
Last-Modified:Sun,25Nov201822:28:15GMT
Content-Encoding:gzip
如上,responseheader头信息中出现"Conten_Encoding:gzip",就说明Nginx已开启了压缩(在浏览器访问,通过F12看请求的响应头部也是一样)
Nginx的Gzip压缩功能虽然好用,但是下面两类文件资源不太建议启用此压缩功能。
1)图片类型资源(还有视频文件)原因:图片如jpg、png文件本身就会有压缩,所以就算开启gzip后,压缩前和压缩后大小没有多大区别,所以开启了反而会白白的浪费资源。(可以试试将一张jpg图片压缩为zip,观察大小并没有多大的变化。虽然zip和gzip算法不一样,但是可以看出压缩图片的价值并不大)
2)大文件资源原因:会消耗大量的cpu资源,且不一定有明显的效果。
以上就是Nginx性能优化之Gzip压缩的设置方法的详细内容,更多请关注主机测评网其它相关文章!
本文来源:国外服务器--Nginx性能优化之Gzip压缩的设置方法(nginx开启gzip压缩)
本文地址:https://www.idcbaba.com/guowai/3114.html
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 1919100645@qq.com 举报,一经查实,本站将立刻删除。



