广告:本站正在使用由 热网互联 提供的云主机(香港CIA线路)

MENU

使用brotli,给你的https加把力(基于nginx)

2017 年 04 月 21 日 • 实验室

brotli是谷歌开源的一个比较风骚的压缩算法,相比gzip这些还是有比较明显的优势,使用https的站点,在启用brotli后,还是可以获得一个比较客观的效率提升,具体的啥啥啥,自行百度,直接进入正题,编译nginx支持brotli:

为brotli创建一个目录,这里我们定义现在在/root目录下:

mkdir brotli
cd brotli
git clone https://github.com/bagder/libbrotli
cd libbrotli
./autogen.sh
./configure
make && make install
git clone https://github.com/google/ngx_brotli.git
cd ngx_brotli
git submodule update --init

为brotli赋上骚骚的权限

chmod +x /root/brotli/libbrotli/ngx_brotli/config

在编译nginx的时候加上参数即可

--add-module=/root/brotli/libbrotli/ngx_brotli

这样nginx就已经支持brotli了,接下来在nginx的配置中配置参数即可:

brotli on;
brotli_types text/plain text/css application/json application/javascript application/x-javascript text/xml application/xml application/xml+rss text/javascript image/x-icon;
brotli_comp_level 4;
brotli_buffers 16 8k;
brotli_window 512k;
brotli_min_length 20;

reload nginx 即生效,经过我的观察,brotli和gzip可以共存,在同时压缩同一类文件时brotli优先级会高一些;有兴趣捣鼓的朋友,可以分配一下types来实现gzip和brotli针对性的压缩,例如,将静态文件交给brotli,php这类页面交给gzip,这样可能会有更好的效果。
bl.png

标签: nginx, brotli, https