X
返回
Nginx开启Brotli
文章信息:
- 分类:服务器部署
- 阅读量:3306
- 创建时间:2022-11-19
- 更新时间:2年前
Brotli是一种通用无损压缩算法,在Nginx模块中和Gzip都是压缩文件的一种方式,不同的是Brotli专为Web设计,对于Web数据压缩效率更高,甚至压缩效果比Gzip更小。Brotli配置和Gzip配置可以共存,无需删除原有的配置
注意:如果你使用的是Ubuntu apt安装的Nginx,那么你需要通过编译安装Nginx的方式替换apt安装的Nginx。因为apt安装的Nginx无法自定编译安装模块
安装 ngx_brotli
cd /usr/local/src/
git clone https://github.com/google/ngx_brotli
cd ngx_brotli
git submodule update --init
获取配置参数
# 注意这里的V要大写,小写的V显示的是版本号
nginx -V
安装ngx_brotli模块
进入Nginx目录:
cd /usr/local/src/nginx-1.**.**
添加模块:
# 这里的 configure arguments 是上面运行的Nginx -V获取到的configure arguments: 后面的内容
./configure [configure arguments] --add-module=/usr/local/src/ngx_brotli
编译安装:
make install
检查安装:
nginx -V
Nginx.conf 添加配置
http {
include mime.types;
default_type application/octet-stream;
#log_format main '$remote_addr - $remote_user [$time_local] "$request" '
# '$status $body_bytes_sent "$http_referer" '
# '"$http_user_agent" "$http_x_forwarded_for"';
# 启用或禁用检查扩展名为.br 的预压缩文件是否存在。
brotli_static on;
# 启用压缩
brotli on;
# 压缩的文件类型
brotli_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript application/javascript image/svg+xml;
# 压缩质量
brotli_comp_level 6;
# 允许压缩的最小大小
brotli_min_length 20;
检查Nginx.conf配置:
nginx -t
重启Nginx服务:
nginx -s reload
验证是否开启Brotli
使用命令查看或者在浏览器用Network查看
运行命令:
curl -H 'Accept-Encoding: br' -I http://localhost
HTTP/1.1 200 OK
Server: nginx/1.23.2
Date: Fri, 18 Nov 2022 17:53:48 GMT
Content-Type: text/html
Last-Modified: Wed, 16 Nov 2022 16:30:56 GMT
Connection: keep-alive
Vary: Accept-Encoding
ETag: W/"63751040-124b"
Content-Encoding: br
Content-Encoding:br 证明内容正确的被Brotli压缩
ETag:W/"63751040-124b" 前面的W代表是服务端压缩,没有就是前端打包压缩
评论/留言