最新下载
热门教程
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
如何配置 Nginx 启用 Brotli 压缩提高网页加载性能
时间:2026-06-23 09:11:34 编辑:袖梨 来源:一聚教程网
Nginx启用Brotli需先编译集成ngx_brotli模块,再配置brotli on、brotli_static off及精准types,最后调优comp_level(推荐5–6);其对HTML/CSS/JS压缩率比Gzip高17–25%,且仅HTTPS下自动协商br编码。
直接开启 Brotli 压缩不能只改配置文件,Nginx 必须先支持 ngx_brotli 模块,否则配置无效。它不是开关式功能,而是需要编译集成的底层能力。启用后,对 HTML、CSS、JS 等文本资源压缩率比 Gzip 高 17–25%,且现代浏览器(Chrome/Firefox/Edge)在 HTTPS 下会自动协商使用 br 编码。
确认 Nginx 是否已支持 Brotli 模块
执行命令验证模块是否存在:
-
nginx -V 2>&1 | grep -o ngx_brotli—— 有输出说明已加载;无输出则需编译安装 - 注意:
nginx -V输出中的configure arguments是后续重编译的关键依据,务必保留 - Brotli 仅在 HTTPS 环境下被客户端主动请求(
Accept-Encoding: br),HTTP 站点不会触发
编译安装 ngx_brotli 模块
宝塔或 phpEnv 等环境均需手动集成,不可跳过此步:
- 进入服务器,执行:
cd /www/server && git clone https://github.com/google/ngx_brotli.git && cd ngx_brotli && git submodule update --init - 卸载当前 Nginx(宝塔中操作前请创建快照备份)
- 重新安装 Nginx,选择【编译安装】,添加自定义模块路径:
/www/server/ngx_brotli - 或手动编译:进入 Nginx 源码目录,用原 configure 参数追加
--add-module=/www/server/ngx_brotli,再执行make && make install - 完成后运行
/www/server/nginx/sbin/nginx -V确认含ngx_brotli
配置 Brotli 压缩参数
编辑 /www/server/nginx/conf/nginx.conf,在 http { ... } 块内添加(建议放在 gzip 配置之后):
-
brotli on;—— 必须显式开启,否则不生效 -
brotli_comp_level 5;—— 生产环境推荐 5–6 级,兼顾压缩率与 CPU 开销;避免设为 11 -
brotli_min_length 20;—— 小于 20 字节的响应不压缩,防止得不偿失 -
brotli_types text/plain text/css application/javascript application/json text/html image/svg+xml;—— 精准覆盖文本类资源,不压缩图片、字体等已压缩格式 -
brotli_static off;—— 关闭静态 .br 文件查找(除非你已预生成并维护这些文件)
验证是否成功启用
配置保存后点击【重载配置】,再通过真实请求确认:
- 打开网站,F12 → Network → 刷新页面 → 点击任意 JS/CSS/HTML 请求
- 查看 Response Headers 中
content-encoding是否为br - 终端测试:
curl -I -H "Accept-Encoding: br" https://yoursite.com/style.css,响应头应含content-encoding: br - 若仍显示
gzip或为空,检查:是否 HTTPS、是否重载 Nginx、配置是否在 http 块内、客户端是否支持
Brotli 和 Gzip 可同时启用,无需关闭后者。浏览器会按 Accept-Encoding 优先级自动选择,老旧设备自然回退到 Gzip,安全又高效。
相关文章
- 明末渊虚之羽防具有哪些排名 07-02
- 如何获取和平精英皮肤照片 07-02
- 空洞骑士丝之歌如何获取制造金属 07-02
- 鱼骨头螃蟹阵容如何搭配 07-02
- 战魂旅人玩法是什么 07-02
- 无限暖暖祝你幸福发饰如何获取 07-02