rmdir.cn

gzip 压缩配置示例

压缩文本资源并验证响应头

配置骨架(非 Shell 命令)

gzip on;
gzip_vary on;
gzip_types text/css application/javascript;

说明

适用于减少 HTML、CSS、JavaScript 等文本资源传输体积。配置片段放入 /etc/nginx/nginx.conf 的 http 块,或被其 include 的站点文件的目标 server 块;实际路径以安装配置为准,先用 nginx -V 确认模块可用。图片、压缩包通常不需要再次压缩。修改后先检查通过再重载。

示例

静态文本资源压缩

放入 http 或目标 server 上下文;HTML 默认属于 gzip 支持类型。

gzip on;
gzip_vary on;
gzip_min_length 1024;
gzip_comp_level 5;
gzip_types text/css application/javascript application/json image/svg+xml;

注意事项:压缩级别越高越消耗 CPU。含敏感信息且混合用户可控内容的动态响应需要评估压缩侧信道风险,可在对应 location 关闭 gzip。

验证压缩响应

请求一个超过阈值的文本资源并查看 Content-Encoding 和 Vary。

curl -sS -D - -o /dev/null -H 'Accept-Encoding: gzip' https://example.com/assets/app.js

注意事项:替换为真实存在的资源;文件过小、类型不匹配或中间代理处理都可能导致没有 gzip 响应头。

参考资料