http://nginx.org/en/docs/http/ngx_http_gzip_module.html
1.在http中配置
gzip on;
gzip_min_length 100k;
gzip_buffers 4 16k;
gzip_comp_level 3;
gzip_types text/plain application/javascript application/x-javascript text/css application/xml text/javascript application/x-httpd-php image/jpeg image/gif image/png;
gzip_disable "MSIE [1-6]\.";
2.参数详情
句法: gzip on | off;
默认: gzip off;
语境: http,server,location,if in location
启用或禁用gzipping响应。
句法: gzip_buffers number size;
默认:
gzip_buffers 32 4k | 16 8k;
语境: http,server,location
设置用于压缩响应的缓冲区number和size。默认情况下,缓冲区大小等于一个内存页面。这是4K或8K,具体取决于平台。
句法: gzip_comp_level level;
默认:
gzip_comp_level 1;
语境: http,server,location
设置level响应的gzip压缩。可接受的值范围为1到9,1 压缩比最小处理速度最快,9 压缩比最大但处理最慢。
句法: gzip_min_length length;
默认:
gzip_min_length 20;
语境: http,server,location
设置将被gzip压缩的响应的最小长度。长度仅由“Content-Length”响应头字段确定。
默认值是0,不管页面多大都压缩。
建议设置成大于1k的字节数,小于1k可能会越压越大。 即: gzip_min_length 1024
句法: gzip_types mime-type ...;
默认:
gzip_types text/html;
语境: http,server,location
除了“ text/html” 之外,还允许对指定的MIME类型进行gzipping响应。特殊值“ *”匹配任何MIME类型(0.8.29)。text/html始终压缩具有“ ”类型的响应。
句法: gzip_disable regex ...;
默认: -
语境: http,server,location
该指令出现在0.6.23版本中。
对具有与任何指定正则表达式匹配的“User-Agent”标头字段的请求禁用gzipping响应。
特殊掩码“ msie6”(0.7.12)对应于正则表达式“ MSIE [4-6]\.”,但工作得更快。从版本0.8.11开始,“ MSIE 6.0; ... SV1”将从此掩码中排除。
句法: gzip_proxied off | expired | no-cache | no-store | private | no_last_modified | no_etag | auth | any ...;
默认:
gzip_proxied off;
语境: http,server,location
根据请求和响应启用或禁用对代理请求的响应的gzipping。请求被代理的事实由“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
如果请求标头包含“授权”字段,则启用压缩;
any
为所有代理请求启用压缩。
3.查看nginx中压缩是否生效
查看response header中是否又content-encoding
content-encoding: gzip