一、Gzip模块简介
ngx_http_gzip_module
模块是使用“ gzip”方法压缩响应的过滤器。有助于数据的传输。
二、示例配置
location /{
gzip_http_version 1.1;
gzip_comp_level 3;
gzip_types text/plain application/json application/javascript application/x-javascript application/css application/xml application/xml+rss text/javascript application/x-httpd-php image/jpeg image/gif image/png image/x-ms-bmp;
}
三、相应选项的介绍
1.gzip
启用或禁用响应的压缩。
语法: gzip on | off; 默认: gzip off; 配置的位置: http,server,location
2.gzip_buffers
设置用于压缩响应的number
和size
的缓冲区。默认情况下,缓冲区大小等于一个内存页。
语法: gzip_buffers number size; 默认: gzip_buffers 32 4k | 16 8k; 配置的位置: http,server,location
3.gzip_comp_level
设置level
响应的gzip压缩。可接受的值范围是1到9。建议值为3-4!
语法: gzip_comp_level level; 默认: gzip_comp_level 1; 配置的位置: http,server,location
4.gzip_http_version
设置压缩响应所需的最低HTTP版本请求。
语法: gzip_http_version 1.0 | 1.1; 默认: gzip_http_version 1.1; 配置的位置: http,server,location
5.gzip_min_length
设置将被压缩的响应的最小长度。长度仅由“ Content-Length”响应头字段确定。
语法: gzip_min_length length; 默认: gzip_min_length 20; 配置的位置: http,server,location
6.gzip_proxied
根据请求和响应为代理请求启用或禁用响应的压缩。请求被代理的事实由“ Via”请求标头字段的存在来确定。
语法: gzip_proxied off | expired | no-cache | no-store | private | no_last_modified | no_etag | auth | any ...; 默认: gzip_proxied off; 配置的位置: 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:如果请求标头包含“授权”字段,则启用压缩;
any:为所有代理请求启用压缩。
7.gzip_type
特殊值“ *
”与任何MIME类型(0.8.29)匹配。
语法: gzip_types mime-type ...; 默认: zip_types text / html; 配置的位置: http,server,location
更多的MIME类型见https://www.w3school.com.cn/media/media_mimeref.asp
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Nginx之gzip模块 - Python技术站