该ngx_http_gzip_module
模块是一个使用“ gzip”方法压缩响应的过滤器。这通常有助于将传输数据的大小减少一半甚至更多。
Syntax: gzip on | off; Default: gzip off; Context: http, server, location, if in location
启用或禁用响应的压缩。
Syntax: gzip_buffers number size; Default: gzip_buffers 32 4k|16 8k; Context: http, server, location
Syntax: gzip_comp_level level; Default: gzip_comp_level 1; Context: http, server, location
Syntax: gzip_disable regex ...; Default: — Context: http, server, location This directive appeared in version 0.6.23.
禁用带有“ User-Agent”头字段匹配任何指定正则表达式的请求的响应的gzip。
匹配到客户端浏览器不执行压缩 示例:gzip_disable "MSIE[1-6].";
Syntax: gzip_http_version 1.0 | 1.1; Default: gzip_http_version 1.1; Context: http, server, location
设置压缩响应所需的最低HTTP请求版本。
Syntax: gzip_min_length length; Default: gzip_min_length 20; Context: http, server, location
设置将被压缩的响应的最小长度。长度仅由“ Content-Length”响应头字段确定。
Syntax: gzip_proxied off | expired | no-cache | no-store | private | no_last_modified | no_etag | auth | any ...;
Default: gzip_proxied off;
Context: http, server, location
为所有代理请求启用压缩。
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 为所有代理请求启用压缩。
Syntax: gzip_types mime-type ...; Default: gzip_types text/html; Context: http, server, location
除“ text/html
” 外,还对指定的MIME类型启用响应的压缩。特殊值“ *
”匹配任何MIME类型(0.8.29)。“ text/html
”类型的响应始终被压缩。
Syntax: gzip_vary on | off;
Default: gzip_vary off;
Context: http, server, location
如果启用指令
配置案例
在nginx.conf中配置
user www; worker_processes 1; events { worker_connections 1024; } http { include mime.types; default_type application/octet-stream; log_format main '$remote_addr - $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_for"'; access_log logs/access.log main; sendfile on; #tcp_nopush on; #keepalive_timeout 0; keepalive_timeout 65; #压缩配置 gzip on; gzip_comp_level 6; gzip_min_length 64; gzip_vary on; gzip_types text/xml text/css application/javascript; server { listen 80; server_name localhost; location / { root html; index index.html index.htm; } error_page 500 502 503 504 /50x.html; location = /50x.html { root html; } } }