概述
gzip模块名:ngx_http_gzip_module。通常有助于将传输数据的大小减少一半甚至更多。
示例
gzip on;
gzip_min_length 1000;
gzip_proxied expired no-cache no-store private auth;
gzip_types text/plain application/xml;
指令
语法 | 默认值 | Context | 注解 |
gzip on | off | gzip off | http, server, location, if in location | 启用或禁用响应的压缩。 |
gzip_buffers number size | gzip_buffers 32 4k|16 8k; | http, server, location, if in location | 设置压缩响应的缓冲区数量和大小。默认情况下大小是一个内存页,4k或8k。 |
gzip_comp_level level | gzip_comp_level 1 | http, server, location | 设置压缩响应的等级,在1到9之间。压缩等级越高,压缩速度越慢,压缩率越高。 |
gzip_disable regex ... | — | http, server, location | 禁用对“User-Agent”请求头正则匹配的值的gzip压缩。 判断客户端浏览器类型及版本是否支持压缩。 |
gzip_http_version 1.0 | 1.1 | gzip_http_version 1.1 | http, server, location | 设置压缩响应所需的请求的最低 HTTP 版本。 |
gzip_min_length length | gzip_min_length 20 | http, server, location | 设置将被 gzip 压缩的响应的最小长度。长度仅由“Content-Length”响应头字段确定。 |
gzip_proxied off | expired | no-cache | no-store | private | no_last_modified | no_etag | auth | any ... | gzip_proxied off | http, server, location | 根据请求和响应启用或禁用对代理请求的响应进行 gzip 压缩。请求被代理的事实由“Via”请求头字段的存在决定。该指令接受多个参数: off 禁用所有代理请求的压缩,忽略其他参数; expired 如果响应头包含具有禁用缓存值的“Expires”字段,则启用压缩; no-cache 如果响应头包含带有“ no-cache”参数的“Cache-Control”字段,则启用压缩; no-store 如果响应头包含带有“ no-store”参数的“Cache-Control”字段,则启用压缩; private 如果响应头包含带有“ private”参数的“Cache-Control”字段,则启用压缩; no_last_modified 如果响应头不包含“Last-Modified”字段,则启用压缩; no_etag 如果响应头不包含“ETag”字段,则启用压缩; auth 如果请求标头包含“Authorization”字段,则启用压缩; any 为所有代理请求启用压缩。 |
gzip_types mime-type ... | gzip_types text/html | http, server, location | 除了“ text/html”之外,还为指定的 MIME 类型启用响应的 gzip 压缩。 特殊值“ *”匹配任何 MIME 类型。带有“ text/html”类型的响应总是被压缩。 MIME类型:https://developer.mozilla.org/zh-CN/docs/Web/HTTP/Basics_of_HTTP/MIME_types |
gzip_vary on | off | gzip_vary off | http, server, location | 如果指令gzip、 gzip_static或gunzip 处于活动状态, 则启用或禁用插入“Vary: Accept-Encoding”响应标头字段 。 |
嵌入式变量
该$gzip_ratio
变量可用于记录实现的压缩比。计算为原始响应大小和压缩响应大小之间的比率。