chaihongjun.me

centos安装google最新压缩算法brotli的nginx模块ngx_brotli

Brotli是一种通用无损压缩算法,它使用LZ77算法的现代变体、霍夫曼编码和二阶上下文建模的组合来压缩数据,压缩比与目前最好的通用压缩方法相当。它的速度与deflate相似,但提供了更密集的压缩。deflate则是nginx默认使用的压缩模式。

项目地址:

https://github.com/google/ngx_brotli

静态编译方式:

git clone  https://github.com/google/ngx_brotli
cd /usr/local/ngx_brotli
git submodule update --int #更新依赖
cd nginx_source
./configure {nginx原先的配置参数} --add-module=/usr/local/ngx_brotli
make
## 后续则是平滑升级部分

模块配置:

brotli on;
brotli_comp_level 6;
brotli_buffers 16 8k;
brotli_min_length 20;
brotli_types *;
brotli_window 512k;

11.png

响应头显示Content-Encoding:br,说明生效了。brotli可以和Nginx默认的压缩配置很好的兼容在一起,因此nginx默认的压缩配置无需删除,只要添加brotli的配置即可(建议配置在http段),其他参数可以看官方文档。

知识共享许可协议本作品采用知识共享署名-非商业性使用-禁止演绎 4.0 国际许可协议进行许可。作者:柴宏俊»