阅读量:0
Nginx服务器中的GZip配置参数包括
gzip on;
启用压缩,gzip_vary on;
增加Vary头,以及gzip_types text/plain text/css application/json等;
定义可压缩的MIME类型。Nginx服务器中的GZip配置参数详解
参数名称 | 描述 | 默认值 | 作用域 |
gzip on | 开启gzip压缩 | off | http, server, location, if in location |
gzip_buffers | 设置用于处理请求压缩的缓冲区数量和大小,例如32 4K表示按照内存页大小以4K为单位申请32倍的内存空间。 | 32 4k | http, server, location |
gzip_comp_level | 设置gzip压缩级别,1-9的正整数,1最低,9最高,压缩时间长,消耗CPU资源多。 | 1 | http, server, location |
gzip_min_length | 当返回内容大于此值时才会使用gzip进行压缩,以字节为单位,建议大于1k。 | 20 | http, server, location |
gzip_http_version | 识别HTTP协议的版本,1.0或1.1,早期浏览器不支持gzip自解压。 | 1.1 | http, server, location |
gzip_types | 设置需要压缩的MIME类型,如text/plain、application/javascript等。 | text/html | http, server, location |
gzip_vary | 是否传输"Vary: Accept-Encoding"应答头。 | off | http, server, location |
gzip_proxied | nginx做为反向代理时启用,支持多种条件。 | off | http, server, location |
gzip_disable | 通过表达式,表明哪些UA头不使用gzip压缩。 | — | http, server, location |
相关问题与解答
问题1:为什么有些资源不适合开启gzip压缩?
答:某些类型的资源,如图片、音频和视频等二进制文件,不适合开启gzip压缩,这是因为这些文件的压缩率通常较低,例如100字节可能会压缩到80字节,而且压缩过程还会消耗CPU资源,对于这些资源,开启gzip压缩不仅效果不明显,还可能增加服务器的负担。
问题2:如何解决Nginx配置正确但外网没有做gzip压缩的问题?
答:这种情况可能是由于负载均衡的机器上没有开启gzip导致的,如果公司使用了Nginx集群作为七层负载均衡,并且在这一层上没有开启gzip,那么即使应用服务器开启了gzip压缩,最终用户也可能无法看到压缩效果,解决方法是在负载均衡的机器上也开启gzip压缩,并确保所有层级的配置一致,还可以检查后端Nginx与upstream server之间的通信协议版本,确保它们使用的是支持gzip的HTTP/1.1协议。
到此,以上就是小编对于“Nginx服务器中的GZip配置参数详解”的问题就介绍到这了,希望介绍的几点解答对大家有用,有任何问题和不懂的,欢迎各位朋友在评论区讨论,给我留言。