模块 ngx_http_gzip_module
示例 Directives gzip gzip_buffers gzip_comp_level gzip_disable gzip_http_version gzip_min_length gzip_proxied gzip_types gzip_vary 嵌入变量 |
该模块是一个过滤器
,它使用 “gzip” 方法压缩响应。
这通常有助于将传输数据的大小减少一半甚至更多。ngx_http_gzip_module
使用 SSL/TLS 协议时,压缩响应可能会受到 BREACH 攻击。
示例配置
gzip on; gzip_min_length 1000; gzip_proxied expired no-cache no-store private auth; gzip_types text/plain application/xml;
该变量可用于记录
达到压缩比。$gzip_ratio
Directives
语法: |
gzip |
---|---|
默认值: |
gzip off; |
上下文: |
http , , ,server location if in location |
启用或禁用响应的 gzip 压缩。
语法: |
gzip_buffers |
---|---|
默认值: |
gzip_buffers 32 4k|16 8k; |
上下文: |
http , ,server location |
设置缓冲区的 和
用于压缩响应。
默认情况下,缓冲区大小等于一个内存页。
这是 4K 或 8K,具体取决于平台。number
size
在版本 0.7.28 之前,默认使用四个 4K 或 8K 缓冲区。
语法: |
gzip_comp_level |
---|---|
默认值: |
gzip_comp_level 1; |
上下文: |
http , ,server location |
设置响应的 gzip 压缩。
可接受的值在 1 到 9 之间。level
语法: |
gzip_disable |
---|---|
默认值: | — |
上下文: |
http , ,server location |
该Directives出现在版本 0.6.23 中。
禁用对 “User-Agent” 标头字段匹配 任何指定的正则表达式。
特殊掩码 “” (0.7.12) 对应于
正则表达式 “”,但效果更快。
从版本 0.8.11 开始,“”
从此掩码中排除。msie6
MSIE [4-6]\.
MSIE 6.0; ... SV1
语法: |
gzip_http_version |
---|---|
默认值: |
gzip_http_version 1.1; |
上下文: |
http , ,server location |
设置压缩响应所需的请求的最低 HTTP 版本。
语法: |
gzip_min_length |
---|---|
默认值: |
gzip_min_length 20; |
上下文: |
http , ,server location |
设置将被 gzip 压缩的响应的最小长度。 长度仅由 “Content-Length” 确定 response header 字段。
语法: |
gzip_proxied
|
---|---|
默认值: |
gzip_proxied off; |
上下文: |
http , ,server location |
启用或禁用 proxied 响应的 gzip 压缩 请求,具体取决于请求和响应。 请求被代理的事实由 是否存在 “Via” 请求标头字段。 该Directives接受多个参数:
off
- 禁用所有代理请求的压缩, 忽略其他参数;
expired
- 如果响应标头包含 “Expires” 字段,其值禁用缓存;
no-cache
- 如果响应标头包含
“Cache-Control” 字段,其中
“” 参数;
no-cache
no-store
- 如果响应标头包含
“Cache-Control” 字段,其中
“” 参数;
no-store
private
- 如果响应标头包含
“Cache-Control” 字段,其中
“” 参数;
private
no_last_modified
- 如果响应标头不包含 “Last-Modified” 字段;
no_etag
- 如果响应标头不包含 “ETag” 字段;
auth
- 如果请求标头包含 “授权”字段;
any
- 启用所有代理请求的压缩。
语法: |
gzip_types |
---|---|
默认值: |
gzip_types text/html; |
上下文: |
http , ,server location |
此外,还启用指定 MIME 类型的响应的 gzip 压缩
设置为 “”。
特殊值 “” 与任何 MIME 类型 (0.8.29) 匹配。
具有 “” 类型的响应始终被压缩。text/html
*
text/html
语法: |
gzip_vary |
---|---|
默认值: |
gzip_vary off; |
上下文: |
http , ,server location |
启用或禁用插入 “Vary: Accept-Encoding” 响应报头字段(如果Directives gzip、gzip_static 或 gunzip 处于活动状态)。
嵌入变量
$gzip_ratio
- 达到的压缩比,计算为 原始响应大小和压缩响应大小。