Ⅰ 关于用nginx启动gzip的配置
关于用nginx启动gzip的配置,主要包括以下要点:
开启gzip:
最小压缩文件大小:
压缩级别:
压缩类型:
HTTP头部设置:
禁用特定浏览器的gzip:
缓冲区大小:
支持的HTTP版本:
反向代理压缩规则:
缓存优化:
注意事项: 如果在应用服务器前有另一层Nginx集群作为负载均衡,且该层Nginx未开启gzip,或与后端服务器的通信默认基于HTTP/1.0协议,则可能导致缓存的URL未被gzip压缩。 如果前端Nginx未开启gzip,而后端Nginx上没有设置gzip_http_version为1.1,缓存的URL同样不会被gzip压缩。 使用gzip_proxied和gzip_types指令时,要确保正确配置以避免不必要的性能消耗和资源压缩。
Ⅱ 怎样使用 nginx 压缩html
gzip 是在 Linux 系统中经常使用的一个对文件进行压缩和解压缩的命令,既方便又好用。
在Nginx安装完成之后,我们可以开启Gzip压缩功能,这里Nginx默认只能对text/html类型的文件进行压缩。
下面的指令为开启Gzip的指令:
#启用gzip压缩功能
gzipon;
#默认值是1.1,就是说对HTTP/1.1协议的请求才会进行gzip压缩
gzip_http_version1.1;
gzip_varyon;
#压缩级别,1压缩比最小处理速度最快,9压缩比最大但处理最慢,同时也最消耗CPU,一般设置为3就可以了
gzip_comp_level6;
#nginx做前端代理时启用该选项,表示无论后端服务器的headers头返回什么信息,都无条件启用压缩
gzip_proxiedany;
#什么类型的页面或文档启用压缩
gzip_typestext/plaintext/cssapplication/jsonapplication/x-javascripttext/xmlapplication/xmlapplication/xml+rsstext/javascriptimage/jpegimage/gifimage/png;
#最小压缩的页面,如果页面过于小,可能会越压越大,这里规定大于1K的页面才启用压缩
gzip_min_length1024;
#设置系统获取几个单位的缓存用于存储gzip的压缩结果数据流
gzip_buffers168k;
#禁用IE6的gzip压缩
gzip_disable"MSIE[1-6].(?!.*SV1)";
相关配置说明:
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压缩。
2、gzip_disable的设置是禁用IE6的gzip压缩
IE6的某些版本对gzip的压缩支持不是很好,会造成页面的假死。对img进行gzip后会造成IE6的假死,把对img的gzip压缩去掉后就正常了。为了确保其它的IE6版本不出问题,所以加上了gzip_disable配置项。
3、gzip_min_length设置允许压缩的页面最小字节数,页面字节数从header头中的Content-Length中进行获取。
默认值是0,不管页面多大都压缩。建议设置成大于1k的字节数,小于1k可能会越压越大。 即: gzip_min_length 1024。
Ⅲ Nginx启用压缩及开启gzip 压缩的方法
gzip(GNU-ZIP)是一种压缩技术。经过gzip压缩后页面大小可以变为原来的30%甚至更小,这样,用户浏览页面的时候速度会块得多。
gzip 的压缩页面需要浏览器和服务器双方都支持,实际上就是服务器端压缩,传到浏览器后浏览器解压并解析。浏览器那里不需要我们担心,因为目前的巨大多数浏览器 都支持解析gzip过的页面。
Nginx的压缩输出有一组gzip压缩指令来实现。相关指令位于http{….}两个大括号之间。
具体配置如下
Ⅳ Nginx服务器中的Gzip配置参数详解
gzip on; 开启gzip off关闭
gzip_min_length 1k; 设置允许压缩的页面最小字节(从header头的Content-Length中获取) 建议大于1k
gzip_buffers 4 16k; 以16k为单位,按照原始数据大小以16k为单位的4倍申请内存
gzip_http_version 1.1; 识别http协议的版本,早起浏览器可能不支持gzip自解压,用户会看到乱码
gzip_comp_level 2; 等级1-9 最小的压缩最快 但是消耗cpu
gzip_types text/plain application/x-javascript text/css application/xml; 匹配压缩类型
gzip_vary on; 启用应答头"Vary: Accept-Encoding"
gzip_proxied off;
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"头信息)
gzip_disable msie6;
(IE5.5和IE6 SP1使用msie6参数来禁止gzip压缩 )指定哪些不需要gzip压缩的浏览器(将和User-Agents进行匹配),依赖于PCRE库
gzip 决定是否开启gzip模块
gzip_buffers 设置gzip申请内存的大小,其作用是按块大小的倍数申请内存空间,param2:int(k) 后面单位是k
gzip_comp_level 设置gzip压缩等级,等级越底压缩速度越快文件压缩比越小,反之速度越慢文件压缩比越大
gzip_min_length 当返回内容大于此值时才会使用gzip进行压缩,以K为单位,当值为0时,所有页面都进行压缩
gzip_types 设置需要压缩的MIME类型,非设置值不进行压缩
param:text/html|application/x-javascript|text/css|application/xml
对于多数以文本为主的站点来说,文本自身内容占流量的绝大部分。虽然单个文本体积并不算大,但是如果数量众多的话,流量还是相当可观。启用GZIP以后,可以大幅度减少所需的流量。
Ⅳ 如何在Nginx服务器中启用Gzip压缩
在nginx.conf文件中加入如下配置:
gzip on;
gzip_proxied any;
gzip_types text/plain text/xml text/css application/x-javascript;
gzip_vary on;
之后重启nginx服务就可以了。