编译Nginx
brotli模块下载
进入到/www/server
目录,然后下载ngx_brotli模块。
git clone --recurse-submodules -j8 https://github.com/google/ngx_brotli
正常来说访问git需要开通VPN,其他情况看运气。
我是在本地电脑开通VPN下载的,然后打包上传到服务器上的。
宝塔安装编译Nginx
这里使用的是宝塔面板,编译nginx还是比较方便的。
首先需要将原本的Nginx卸载,然后去软件商店搜索Nginx重新安装。
Nginx的配置文件不用备份,宝塔会自己备份,这点挺好的。
安装的时候选择编译安装,同时在编译命令里添加brotli模块即可。
添加模块命令如下:
--add-module=/www/server/ngx_brotli
添加完成之后的页面是这样的:
如果这里的模块加错了也不用担心,后面编译Nginx的时候会失败的。
编译时间看服务器配置,配置高编译的就快,配置低编译的就慢。
当然,编译期间,网站对外是无法访问的,毕竟Nginx都没了,访问个锤子。
开启brotli
编译成功之后,就可以开启brotli了。
找到Nginx,点开配置文件,找到这行:
在这行的xia mian下面添加配置文件就行了。
配置文件在这里,可以根据自己的情况进行调整:
brotli on;
brotli_comp_level 6; #压缩等级,默认6,最高11,高的压缩等级需要更多的CPU
brotli_buffers 16 8k; #请求缓冲区的数量和大小
brotli_min_length 20; #指定压缩数据的最小字节数,只有大于或等于最小长度才会对其压缩。
brotli_types text/plain application/javascript application/x-javascript text/javascript text/css application/xml 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 application/vnd.api+json; #指定允许进行压缩类型
brotli_static always; #是否允许查找预处理好的、以.br结尾的压缩文件,可选值为on、off、always
brotli_window 512k;
添加完成之后记得点击保存。
然后就可以打开你的网站感受下新的体验了。
发现响应头里有content-encoding: br
就说明你已经成功啦~
总的来说,brotli的压缩效率确实比gzip强上一个level,大概比较了一下,文件体积比使用gzip又缩小了20%左右,很厉害了。
如果还是gzip……
loser,憋说话。
除非注明,否则均为李锋镝的博客原创文章,转载必须以链接形式标明本文链接
文章评论