本文主要是介绍linux CentOS7 下 Nginx 1.13.7 配置gzip压缩提升网站速度与负载,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
gzip简介
废话不说,gzip简单点说是一种压缩算法或工具,用在网站上的作用减少网站流量,提升网站打开速度提升网站性能。
原理是在服务器进行压缩,通过网络传输压缩后的内容,客户端在进行解压显示。类似于rar压缩软件一样。
gzip常用配置项:
gzip on | off;#是否开启gzip压缩。默认off
gzip_buffers number size;
gzip_comp_level level;#压缩等级选择范围1-9,数字越大压缩比越高,相应cup使用越严重。默认1
gzip_disable regex ...;#正则表达式 那些uri不使用压缩。推荐图片视频exe等二进制文件不压缩(压缩比太低浪费资源)。
gzip_min_length length;#大于等于多少字节码开启压缩(文件太小不建议压缩,因为太小的文件压缩后可能比压缩前还要大,因为需要向文件中写入压缩格式)。默认20
gzip_http_version 1.0 | 1.1; #http服务版本。默认1.1
gzip_proxied off | expired | no-cache | no-store | private | no_last_modified | no_etag | auth | any ...;设置请求者代理服务器,该如何缓存内容。默认off
gzip_types mime-type ...;#对何种类型进行压缩,全部类型可查看nginx下conf/mime.types。默认text/html
gzip_vary on | off;是否传输gzip压缩标志。默认off
Nginx使用gzip
1、启动nginx /usr/local/nginx/sbin/nginx
2、访问nginx主页http://192.168.1.6/index.html
3、使用谷歌浏览器的开发者工具,查看index.html头信息
vim /usr/local/nginx/conf/nginx.conf
5、根据官方文档介绍nginx上可以将gzip配置在http、server、location上下文中或者在location中的if段中。
官网文档地址 http://nginx.org/en/docs/http/ngx_http_gzip_module.html
我选择配置在server中配置,在server中加入如下项目:
gzip on;gzip_buffers 32 4K;gzip_comp_level 6;gzip_min_length 400;gzip_types text/plain application/xml application/javascript;gzip_vary on;
以上内容在测试环节最重要的属于gizp_min_length 的设置,鉴于index.html是612字节,我设置gzip_min_length为400,这样测试才能看出效果。
对nginx.conf编辑完毕 保存。
重启加载配置nginx(有称为软重启的)
/usr/local/nginx/sbin/nginx -s reload
刷新http://192.168.1.6/index.html
再次使用开发者工具查看头信息。注意刷新时需要先清除缓存,也可以在index.html稍作修改就不会使用缓存。
注意:
一、设置压缩类型gzip_types text/plain应该注意任何类型的文件压缩比可能不尽相同,例如文本类型压缩后可能是压缩前的四分之一五分之一大小。但是mp3、图片等二进制类型的压缩比非常小,100mb压缩后可能只压缩掉10mb左右,所以在cup资源与内存资源适当做出选择。
二、设置gzip_min_length 值不是设置越小越好,因为压缩是需要将压缩的格式内容写入压缩文件中,所以当本身内容已经非常小了,再压缩的话可能比不压缩还要大。
经过测试10字节的txt,压缩后的rar有130多字节。
这篇关于linux CentOS7 下 Nginx 1.13.7 配置gzip压缩提升网站速度与负载的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!