chaihongjun.me

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

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

PS:目前这个似乎只支持https协议访问的网站,以后似乎也是只支持https协议访问的网站

brotli是Google开发的一款压缩算法,目前已经google49版本以及FF浏览器已经开始支持此算法,IE11非常抱歉。还有一个特性是brotli与gzip算法可以共存,当然brotli的优先级别更高。针对nginx还专门有一个模块:ngx_brotli。项目主页:https://github.com/google/ngx_brotli

直入主题给我们的nginx添加这个模块:

由于新版的缘故,自2016年12月以后的版本,ngx_brotli的模块安装更加的方便,在网上其他教程还有要求依赖库goole/brotli的安装以及额外编译bagder/libbrotli,这里都不需要,因为新版已经内置了。

安装方法:

#克隆ngx_brotli
git clone https://github.com/google/ngx_brotli
cd /usr/local/ngx_brotli         #进入ngx_brotli目录
git submodule update --init #更新ngx_brotli所需依赖库
#至此ngx_brotli所需模块都下载完成
#然后是给nginx添加此模块,进入nginx的安装目录
cd /nginx-1.12.0/
./configure {之前的nginx配置参数} --add-module=/usr/local/ngx_brotli #添加ngx_brotli模块路径
#然后是make
make
#接着是nginx平滑升级的后续操作
#这里模块才是真正的安装完毕

模块配置:

ngx_brotli的大部分配置参数可以在nginx配置文件的http,server和location段内,具体配置参数请参考项目主页。这里给出一个简要配置方案:

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

检查是否生效:

查看请求头部是否包含content-Encoding:br

知识共享许可协议本作品采用知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议进行许可。作者:chaihongjun»