IT博客汇
  • 首页
  • 精华
  • 技术
  • 设计
  • 资讯
  • 扯淡
  • 权利声明
  • 登录 注册

    宝塔 Nginx 安装 Brotli 压缩模块

    Teacher Du发表于 2024-11-01 03:51:26
    love 0

    使用 CDN 的小伙伴都知道,访问优化一块,压缩除了 Gzip 还有 Brotli,而 Brotli 作为新一代的工具,宝塔面板竟然一直没有集成。今天教大家如何手动为 Nginx 安装 Brotli 压缩模块!

    安装准备工作

    1. 先卸载您现在使用的 Nginx,避免后面步骤出错;

    2. 下载 Brotli 并修改 Nginx 安装脚本来进行安装。

    相关文件下载

    连接 SSH 并输入以下命令,首先进入宝塔服务目录:

    1
    cd /www/server/

    其次下载 Brotli 源码包:

    1
    git clone https://github.com/google/ngx_brotli.git

    接着进入 Brotli 源码包目录:

    1
    cd ngx_brotli/

    更新 Brotli 源码子模块:

    1
    git submodule update --init

    修改安装脚本

    找到文件 /www/server/panel/install/nginx.sh 并将其中的:

    1
    ./configure --user=www --group=www --prefix=${Setup_Path} ${ENABLE_LUA} --add-module=${Setup_Path}/src/ngx_cache_purge ${ENABLE_STICKY} --with-openssl=${Setup_Path}/src/openssl --with-pcre=pcre-${pcre_version} ${ENABLE_HTTP2} --with-http_stub_status_module --with-http_ssl_module --with-http_image_filter_module --with-http_gzip_static_module --with-http_gunzip_module --with-ipv6 --with-http_sub_module --with-http_flv_module --with-http_addition_module --with-http_realip_module --with-http_mp4_module --with-ld-opt="-Wl,-E" --with-cc-opt="-Wno-error" ${jemallocLD} ${ENABLE_WEBDAV} ${ENABLE_NGX_PAGESPEED} ${ADD_EXTENSION} ${i_make_args}

    改为:

    1
    ./configure --user=www --group=www --prefix=${Setup_Path} ${ENABLE_LUA} --add-module=${Setup_Path}/src/ngx_cache_purge ${ENABLE_STICKY} --with-openssl=${Setup_Path}/src/openssl --with-pcre=pcre-${pcre_version} ${ENABLE_HTTP2} --with-http_stub_status_module --with-http_ssl_module --with-http_image_filter_module --with-http_gzip_static_module --with-http_gunzip_module --with-ipv6 --with-http_sub_module --with-http_flv_module --with-http_addition_module --with-http_realip_module --with-http_mp4_module --with-ld-opt="-Wl,-E" --with-cc-opt="-Wno-error" ${jemallocLD} ${ENABLE_WEBDAV} ${ENABLE_NGX_PAGESPEED} ${ADD_EXTENSION} ${i_make_args} --add-module=/www/server/ngx_brotli

    重安装 Nginx

    1
    bash /www/server/panel/install/nginx.sh install 1.23.2

    注意:使用上面的命令重新安装 Nginx,其中 1.23.2 为 Nginx 版本号,可以根据实际需求修改!

    设置配置文件

    1
    2
    3
    4
    brotli on;
    brotli_comp_level 6;
    brotli_static on;
    brotli_types application/atom+xml application/javascript application/json application/rss+xml application/vnd.ms-fontobject application/x-font-opentype application/x-font-truetype application/x-font-ttf application/x-javascript application/xhtml+xml application/xml font/eot font/opentype font/otf font/truetype image/svg+xml image/vnd.microsoft.icon image/x-icon image/x-win-bitmap text/css text/javascript text/plain text/xml;

    注意:将上述代码添加到 Nginx 配置文件中即可。

    写在文章最后

    实测 Brotli 的压缩率为 6 时,与同压缩率的 Gzip 比,体积更小。

    部分 CDN 不支持透传 Header 会导致源站不做压缩处理,源站开了压缩 CDN 就不要开了。



沪ICP备19023445号-2号
友情链接