最近闲逛的时候看到的,虽然我的blog没什么流量,而且几乎没有人来,不过还是验证了一下,顺便记录下来,以便后续用得到。
1、先查看Nginx版本

nginx -v

2、通过SSH登录主机,输入如下命令进入server文件夹内:

cd /www/server

2、下载brotli

git clone https://github.com/google/ngx_brotli.git

3、进入文件夹后更新brotli

cd ngx_brotli
git submodule update --init

4、修改Nginx文件,可以选择面板或者ssh,
4.1 删除原有安装配置
rm -rf /www/server/panel/install/nginx.sh
4.2 再重新从BT官方下载新的nginx.sh文件,在URL地址里面填入:
cd /www/server/panel/install && wget http://download.bt.cn/install/0/nginx.sh && chmod +x nginx.sh
4.3 可以直接查找代码:
./configure --user=www --group=www --prefix=${Setup_Path} ${ENABLE_LUA}
然后在这代码后面加入如下代码后保存(注意两边空格)
--add-module=/www/server/ngx_brotli
保存后的效果如下:
6-9.png
5、重新编译nginx
5.1 如果想变更版本,需要查看nginx.sh里对应的版本名称,如果延用原有版本,就用刚才nginx -v的版本
5.2 ssh输入,后面是想要安装的版本
sh /www/server/panel/install/nginx.sh install 1.15.10
6、在nginx开启Brotli,点击Nginx设置,选择配置修改,在Gzip的代码后面加入如下代码:
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;
以上的代码可以参考实际需要下面进行一些微调,如果没有需求就可以直接用上面的代码进行保存即可。
brotli on; #启用
brotli_comp_level 6; #压缩等级,默认6,最高11,太高的压缩水平可能需要更多的CPU
brotli_buffers 16 8k; #请求缓冲区的数量和大小
brotli_min_length 20; #指定压缩数据的最小长度,只有大于或等于最小长度才会对其压缩。这里指定20字节
brotli_types text/plain application/javascript application/x-javascript text/javascript text/css application/xml text/html application/json image/svg application/font-woff application/vnd.ms-fontobject application/vnd.apple.mpegurl image/x-icon image/jpeg image/gif image/png image/bmp; #指定允许进行压缩类型
brotli_static always; #是否允许查找预处理好的、以.br结尾的压缩文件,可选值为on、off、always
brotli_window 512k; #窗口值,默认值为512k
效果如下图
微信图片_20210422140330.png
保存后,重启Nginx即可。
如果开启了反向代理的话,那么源站和反代站都要编译安装brotli,并开启brotli。

7、如何检测Brotli压缩是否开启成功
用谷歌浏览器打开相应的站点。点击右键后,点击检查,查看标头是否有br字样,比如下面:
微信截图_20210422140556.png
以上及表示开启成功,网站的浏览速度会有提升,同时兼容了gzip,在不支持brotli的时候会自动切换gzip模式。

评论已关闭