Nginx开启Gzip完整配置流程
作者:因_崔斯汀
本文手把手教你配置nginx gzip压缩,只需修改几行参数就能大幅减少文本资源体积,提升加载速度,涵盖核心配置、生效验证和常见问题排查,帮你避开图片压缩、层级错误等坑,轻松实现Content-Encoding:gzip响应头,需要的朋友可以参考下
一、核心配置(推荐直接放在http{}全局块,所有站点生效)
打开 nginx 主配置文件,一般路径: /etc/nginx/nginx.conf
http {
# 开启gzip
gzip on;
# 低于此大小不压缩,单位bytes,建议1k,小文件压缩得不偿失
gzip_min_length 1024;
# 压缩级别 1-9,数字越大压缩率越高、CPU消耗越高,一般5足够
gzip_comp_level 5;
# 需要压缩的MIME类型
gzip_types
text/plain
text/css
text/xml
text/javascript
application/json
application/javascript
application/xml+rss
image/svg+xml;
# 是否在响应头添加 Vary: Accept-Encoding(建议开启,代理环境必备)
gzip_vary on;
# 代理服务器缓存压缩标识(反向代理场景开启)
gzip_proxied any;
# IE6及以下禁用gzip(兼容老浏览器)
gzip_disable "MSIE [1-6]\.";
# 缓冲区,默认即可,可选配置
gzip_buffers 4 16k;
}如果你只想单个网站启用,把上面配置放到对应
server {}块内。
二、重要注意点
❌ 不要加图片格式(jpg/png/gif/webp) 图片本身已经压缩,再次 gzip 收益极小,浪费 CPU;只压缩文本类资源。
三、生效步骤
- 检查配置语法
nginx -t
- 重载 Nginx(不中断服务)
nginx -s reload
四、验证是否生效
方式 1 curl 测试
curl -I -H "Accept-Encoding: gzip" https://你的域名/style.css
返回头部出现: Content-Encoding: gzip → 代表成功
方式 2 浏览器 F12
网络面板 → 选中资源 → 响应头查看 Content-Encoding: gzip
五、常见问题
配置写了不生效
- 确认配置放在
http{}/server{},不要放在location{}之外错误层级 nginx -t是否报错- 有没有其他地方重复
gzip off;覆盖配置
反向代理后端返回不压缩 加上 gzip_proxied any;
静态小文件不压缩 由 gzip_min_length 1024 控制,小于 1KB 不会压缩,属于正常策略。
到此这篇关于Nginx开启Gzip完整配置流程的文章就介绍到这了,更多相关Nginx开启Gzip配置流程内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!
