Brotli是Google推出的开源压缩算法,通过变种的LZ77算法、Huffman编码以及二阶文本建模等方式进行数据压缩,与其他压缩算法相比,它有着更高的压缩效率,性能也比我们目前常见的Gzip高17-25%,可以帮我们更高效的压缩网页中的各类文件大小及脚本,从而提高加载速度,提升网页浏览体验。
![图片[1]-宝塔面板Nginx启用Brotli压缩算法提高网站访问速度](https://www.cmdeye.com/wp-content/uploads/2022/09/xe9fcdb7cab231010.png.pagespeed.ic.ZRkmYcwDuP.png)
Brotli 凭借它优异的性能迅速占领了市场,对主流浏览器都有广泛的支持Brotli算法。各大CDN厂商也推出了Brotli,可以看出Brotli有多么火热。在考虑资源占用和流量或访问速度等各方面因素,建议启用。钧言极客已经支持Brotli算法,对访问速度有一定的提升。
这里使用宝塔管理面板来安装。操作环境 Centos 7.6
其他环境也可以借鉴
环境
- nginx包目录:nginx-1.22.0
- nginx安装目录:/www/server/nginx
- 插件目录:/www/server/nginx_module/
- 系统环境centOs7
下载Brotli
cd /www/server ##进入宝塔环境目录
mkdir nginx_module ##创建nginx_module目录
git clone https://github.com/google/ngx_brotli.git ##下载brotli
cd ngx_brotli
git submodule update --init ##更新brotli
![图片[2]-宝塔面板Nginx启用Brotli压缩算法提高网站访问速度](https://www.cmdeye.com/wp-content/uploads/2022/09/x4a47a0db6e001059.png.pagespeed.ic.UC6MPxR15w.png)
编译安装Nginx
1、如果你已安装nginx 请先卸载
2、安装nginx 选择编译安装
![图片[3]-宝塔面板Nginx启用Brotli压缩算法提高网站访问速度](https://www.cmdeye.com/wp-content/uploads/2022/09/xfb5c81ed3a001116.png.pagespeed.ic.P-0h9UUB4e.png)
3、添加自定义模块
![图片[4]-宝塔面板Nginx启用Brotli压缩算法提高网站访问速度](https://www.cmdeye.com/wp-content/uploads/2022/09/x10fb15c772001149.png.pagespeed.ic.W2KXC-f-FG.png)
4、提交等待安装完成
![图片[5]-宝塔面板Nginx启用Brotli压缩算法提高网站访问速度](https://www.cmdeye.com/wp-content/uploads/2022/09/x09dd8c2662001204.png.pagespeed.ic.jSmG8qoUqr.png)
5、检查是否编译成功 nginx -V
![图片[6]-宝塔面板Nginx启用Brotli压缩算法提高网站访问速度](https://www.cmdeye.com/wp-content/uploads/2022/09/x8266e4bfed001320-1024x126.png.pagespeed.ic.6Fl4dYKlZo.png)
开启Brotli压缩
在宝塔面板点击左侧软件商店 – Nginx设置 – 配置修改,在http段内添加以下内容启用Brotli压缩。
brotli on;
brotli_comp_level 6;
brotli_min_length 512;
brotli_types text/plain text/javascript text/css text/xml text/x-component application/javascript application/x-javascript application/xml application/json application/xhtml+xml application/rss+xml application/atom+xml application/x-font-ttf application/vnd.ms-fontobject image/svg+xml image/x-icon font/opentype;
brotli_static always;
最后保存一下文件,然后重载配置或者重启一下nginx就可以了
![图片[7]-宝塔面板Nginx启用Brotli压缩算法提高网站访问速度](https://www.cmdeye.com/wp-content/uploads/2022/09/xf19c908512001511.png.pagespeed.ic.E6VczFmMFV.png)
参数说明
brotli on; #启用
brotli_comp_level 6; #压缩等级,默认6,最高11,太高的压缩水平可能需要更多的CPU
brotli_buffers 16 8k; #请求缓冲区的数量和大小
brotli_min_length 20; #指定压缩数据的最小长度,只有大于或等于最小长度才会对其压缩。这里指定20字节
brotli_types text/plain; #指定允许进行压缩类型
brotli_static always; #是否允许查找预处理好的、以.br结尾的压缩文件,可选值为on、off、always
brotli_window 512k; #窗口值,默认值为512k
浏览器测试
![图片[8]-宝塔面板Nginx启用Brotli压缩算法提高网站访问速度](https://www.cmdeye.com/wp-content/uploads/2022/09/x9eb9cd58b9001836.png.pagespeed.ic.MoS2EL7SOV.png)
brotli只会在https状态下才会生效,http状态会使用Gzip
© 版权声明
THE END
暂无评论内容