Nginx

ngx_http_gzip_module

ngx_http_gzip_module模块

  • 示例配置

  • 指令

  • gzip

  • gzip_buffers

  • gzip_comp_level

  • gzip_disable

  • gzip_min_length

  • gzip_http_version

  • gzip_proxied

  • gzip_types

  • gzip_vary

  • 嵌入式变量

ngx_http_gzip_module模块是使用“gzip”方法压缩响应的过滤器。这通常有助于将传输数据的大小减少一半甚至更多。

示例配置

gzip on; gzip_min_length 1000; gzip_proxied expired no-cache no-store private auth; gzip_types text/plain application/xml;

$gzip_ratio变量可用于记录实现的压缩比率。

指令

句法:gzip 开启 | 关闭;
默认:gzip off;
语境:http,服务器,位置,如果在指定位置

启用或禁用回应的gzip。

句法:gzip_buffers数字大小;
默认:gzip_buffers 32 4k | 16 8k;
语境:http,服务器,位置

设置numbersize用于压缩的响应缓冲区。默认情况下,缓冲区大小等于一个内存页面。这是4K或8K,取决于平台。

在版本0.7.28之前,默认使用4个4K或8K缓冲区。

句法:gzip_comp_level level;
默认:gzip_comp_level 1;
语境:http,服务器,位置

设置level响应的gzip压缩。可接受的值在1到9的范围内。

句法:gzip_disable正则表达式...;
默认:
语境:http,服务器,位置

禁用具有与任何指定正则表达式匹配的“用户代理”标题字段的请求响应的gzip。

特殊掩码“ msie6”(0.7.12)对应于正则表达式“ MSIE [4-6]\.”,但工作更快。从版本0.8.11开始,“ MSIE 6.0; ... SV1”将从此掩码中排除。

句法:gzip_min_length长度;
默认:gzip_min_length 20;
语境:http,服务器,位置

设置将被压缩的响应的最小长度。该长度仅由“Content-Length”响应标题字段确定。

句法:gzip_http_version 1.0 | 1.1;
默认:gzip_http_version 1.1;
语境:http,服务器,位置

设置压缩响应所需的最小HTTP请求版本。

句法: gzip_proxied off | expired | no-cache | no-store | private | no_last_modified | no_etag | auth | any ...;
默认:gzip_proxied off;
语境:http,服务器,位置

取决于请求和响应,启用或禁用针对代理请求的响应gzip。请求被代理的事实取决于“Via”请求头字段的存在。该指令接受多个参数:

off禁用所有代理请求的压缩,忽略其他参数;

句法:gzip_types mime-type ...;
默认:gzip_types text / html;
语境:http,服务器,位置

除了“ text/html” 之外,还可以针对指定的MIME类型启用gzip的响应。特殊值“ *”匹配任何MIME类型(0.8.29)。“ text/html”类型的响应总是被压缩。

句法:gzip_vary开启| 关闭;
默认:gzip_vary关闭;
语境:http,服务器,位置

如果指令gzip,gzip_static或gunzip处于活动状态,则启用或禁用插入“Vary:Accept-Encoding”响应标头字段。

嵌入式变量

$gzip_ratio实现压缩比率,计算为原始压缩响应大小与压缩响应大小之间的比率。