启用文本压缩

文本资源在提供时应进行压缩,以尽量减少总网络数量 字节。Lighthouse 报告中的“优化”部分列出了 未压缩的资源:

Lighthouse“启用文本压缩”审核的屏幕截图

Lighthouse 如何处理文本压缩

Lighthouse 收集符合以下条件的所有响应:

  • 具有基于文本的资源类型。
  • 请勿添加 content-encoding 标头设置为 brgzipdeflate

然后,Lighthouse 使用 GZIP,用于计算 节省的费用

如果响应的原始大小小于 1.4KiB,或者 可能节省不到原始大小的 10%, Lighthouse 不会在结果中标记该响应。

在服务器上启用文本压缩

在提供这些响应的服务器上启用文本压缩功能, 通过此项审核。

当浏览器请求资源时,它将使用 Accept-Encoding HTTP 请求标头,用于指明其支持的压缩算法。

Accept-Encoding: gzip, compress, br

如果浏览器支持 Brotli (br) 您应该使用 Brotli,因为相较于 其他压缩算法。搜索 how to enable Brotli compression in <X>,其中 <X> 是您的服务器的名称。自 2022 年 12 月起,所有主流浏览器(iOS 版 Safari 除外)均支持 Brotli。请参阅 浏览器兼容性 获取更新。

使用 GZIP 作为 Brotli 的回退。所有主流浏览器都支持 GZIP, 但效率不如 Brotli参阅服务器配置 获取示例。

您的服务器应返回 Content-Encoding HTTP 响应标头,用于指明其所用的压缩算法。

Content-Encoding: br

检查响应压缩

如需检查服务器是否压缩了响应,请执行以下操作:

Control+Shift+J(在 Mac 上,按 Command+Option+J)打开开发者工具。 点击 Network (网络)标签。

  1. Ctrl+Shift+J(在 Mac 上,按 Command+Option+J)打开开发者工具。
  2. 点击网络标签页。
  3. 点击引发您感兴趣的回答的请求。
  4. 点击 Headers 标签页。
  5. 检查响应标头部分中的 content-encoding 标头。
。 <ph type="x-smartling-placeholder">
</ph> 内容编码响应标头
content-encoding 响应标头。

如需比较响应的压缩和解压缩大小,请执行以下操作:

  1. Ctrl+Shift+J(在 Mac 上,按 Command+Option+J)打开开发者工具。
  2. 点击网络标签页。
  3. 启用大型请求行。 请参阅使用大型请求行
  4. 查看大小列,找出您感兴趣的回答。通过 top 值是压缩后的大小。底部值是 。

另请参阅缩减网络载荷大小和压缩网络载荷

针对特定堆栈的指南

  • Joomla:启用 Gzip 网页压缩设置(系统 > 全局配置 > 服务器)。
  • WordPress:在您的网络服务器配置中启用文本压缩。

资源