最准验证方式是直接查响应头和实际传输字节数:chrome devtools中确认index.html响应头含content-encoding: br和vary: accept-encoding,并对比size(传输体积)远小于content(解压后体积);或用curl -h "accept-encoding: br" -i测试返回头及size_download值。

直接看响应头和实际字节数,是最准、最轻量的验证方式。不需要装插件或跑监控平台,几条命令就能确认 Brotli 是否真在起作用。
用 curl 检查响应头与大小
执行以下命令,重点观察两个字段:
- Content-Encoding: br —— 必须出现,说明服务端返回的是 Brotli 编码内容
- Content-Length —— 对比未压缩版本,应明显更小(通常比 gzip 小 15%–25%)
示例命令:
curl -H "Accept-Encoding: br" -I https://yoursite.com/app.js如果返回中含 Content-Encoding: br 且状态码为 200,即表示 Brotli 已生效。若返回 Content-Encoding: gzip 或无该头,则说明没走 Brotli 路径。
对比不同编码下的响应体大小
同一资源分别请求 br / gzip / 无压缩,对比实际传输体积:
Linux系统管理专家,覆盖12大模块:用户权限、SSH、存储、网络、systemd、防火墙、日志监控、备份恢复、TLS证书、Ansible、容器、IaC。提供配置、验证、加固、监控、备份、自动化、故障排查、回滚闭环。关键词:useradd、sudo、sshd_config、chmod、SEL...
- br:curl -H "Accept-Encoding: br" -s -o /dev/null -w "%{size_download}\n" https://yoursite.com/main.css
- gzip:curl -H "Accept-Encoding: gzip" -s -o /dev/null -w "%{size_download}\n" https://yoursite.com/main.css
- 无压缩:curl -H "Accept-Encoding:" -s -o /dev/null -w "%{size_download}\n" https://yoursite.com/main.css
正常情况下:无压缩 > gzip > br。若 br 不小于 gzip,说明配置可能有误(如 comp_level 过低、brotli_types 漏类型、或预压缩文件未就位)。
用浏览器 DevTools 实时验证
打开 Chrome 或 Edge 的 Network 面板,刷新页面后点击一个 JS/CSS 文件:
- 查看 Response Headers 中是否有 Content-Encoding: br
- 查看 Size 列(传输大小),对比 Content 列(解压后大小),比值接近 $brotli_ratio(如 3.2 表示压缩了约 3.2 倍)
- 注意:必须通过 HTTPS 访问,浏览器才发送
Accept-Encoding: br;HTTP 下不会触发
查 Nginx 日志确认压缩行为
若已按规范配置了带 $brotli_ratio 的日志格式,可快速判断是否压缩成功:
- 日志中 brotli=1.0 表示未压缩(原始大小 = 传输大小)
- brotli=2.5 或更高,说明 Brotli 生效且效果可观
- 结合
$http_accept_encoding字段,可确认请求确实带了br
例如这条日志:
192.168.1.100 [24/Sep/2026:16:10:02 +0000] "GET /static/index.js HTTP/1.1" 200 98720 brotli=3.1 orig=305600 sent=98720清晰表明:原始 305KB 被压缩为 98KB,压缩比 3.1,Brotli 正常工作。










