如何启用 Brotli 压缩 Apache

在本教程中,我们将向您展示如何启用 brotli 压缩。 对于那些不知道的人,Brotli 是一种由 Google 推出的新压缩格式,它声称比之前的 gzip 或 mod_deflate 兼容实现节省了 20%-28%,但速度相似。 Brotli 的优势在于,对于相同数量的 CPU 工作,会创建较小的压缩文件。 这放大了使用压缩来提供站点内容的优势。 所有主要浏览器(如 Chrome、Firefox、Safari 和 Microsoft Edge)都支持 Brotli 压缩。

本文假设您至少具有 Linux 的基本知识,知道如何使用 shell,并且最重要的是,您在自己的 VPS 上托管您的站点。 安装非常简单,假设您在 root 帐户中运行,否则您可能需要添加 ‘sudo‘ 获取 root 权限的命令。 我将逐步向您展示在上启用 Brotli 压缩 Apache 网络服务器。 您可以按照针对 Ubuntu 18.04、16.04 和任何其他基于 Debian 的发行版(如 Linux Mint)的相同说明进行操作。

启用 Brotli 压缩 Apache

步骤 1. 首先,通过运行以下命令确保所有系统软件包都是最新的 apt 终端中的命令。

sudo apt update sudo apt upgrade

步骤 2. 在 Ubuntu 上安装 Brotli。

现在运行以下命令在您的系统上安装 Brotli:

sudo apt install brotli

步骤 3. 启用 Brotli 压缩 Apache.

下一步我们启用 brotli 模块 Apache 使用以下命令:

sudo a2enmod brotli

之后,配置 Apache 虚拟主机通过在虚拟主机配置文件中添加以下代码:

<IfModule mod_brotli.c>    AddOutputFilterByType BROTLI_COMPRESS text/html text/plain text/xml text/css text/javascript application/javascript</IfModule>

示例 VirtualHost 文件:

<VirtualHost *:80>      ServerAdmin admin@your-domain.com      ServerName your-domain.com      DocumentRoot /var/www/      <IfModule mod_brotli.c>            AddOutputFilterByType BROTLI_COMPRESS text/html text/plain text/xml text/css text/javascript application/javascript      </IfModule>      ErrorLog ${APACHE_LOG_DIR}/error.log      CustomLog ${APACHE_LOG_DIR}/access.log combined</VirtualHost>

Save 文件并重新启动 Apache 应用更改的服务:

sudo systemctl restart apache2

步骤 4. 测试 Brotli。

成功安装和设置后,您可以使用以下命令检查服务器标头 curl -I -H 'Accept-Encoding: br' https://your-domain.com

输出:

HTTP/1.1 200 OK Date: Thu, 01 Sep 2021 06:26:54 GMT Server: Apache/2.4.46 (Ubuntu) Upgrade: h2,h2c Connection: Upgrade Last-Modified: Fri, 10 Mei 2021 22:46:36 GMT ETag: "33-5ba9m3ilanacdf-br" Accept-Ranges: bytes Vary: Accept-Encoding Content-Encoding: br Content-Length: 36 Content-Type: text/html

恭喜! 您已成功安装 Brotli 模块。 感谢您使用本教程在 Ubuntu 20.04 LTS (Focal Fossa) 系统上启用 Brotli。 如需更多帮助或有用信息,我们建议您查看 官方 Apache 网站.