如何对 CloudFront 中压缩文件的问题进行故障排除?

1 分钟阅读
0

我正在使用 Amazon CloudFront 分发来自动提供压缩对象,但内容不会在查看器中进行压缩。我应该如何对此进行故障排除?

解决方法

检查您的 CloudFront 配置

检查查看器的配置

首先,通过 捕获 HTTP 存档(HAR)来获取有关浏览器发送的详细请求标头的信息。然后确认以下事项:

  • 请求使用高于 HTTP 1.0 的 HTTP 版本。在较低版本的 HTTP 中,CloudFront 会移除 Accept-Encoding 标头,并且不会压缩响应中的对象。
  • Accept-Encoding 标头包含在查看器请求中,其中包含 gzipbr 值。

验证原始服务器返回到 CloudFront 的响应

如果您有权访问源,请检查原始服务器返回到 CloudFront 的响应。然后确认以下事项:

  • 源不返回 Content-Encoding 标头。此标头表示响应已压缩。
  • 响应 Content-Length 存在于来自源的响应中,并且在受支持的 1000 字节到 1 千万字节的范围内。
  • 支持该文件类型进行压缩
  • 响应 HTTP 状态码200403404

如果您观察到对象的缓存命中,请将其从缓存中失效。当您打开压缩图像设置时,CloudFront 不会压缩已缓存在边缘站点的对象。当请求来自边缘缓存时,CloudFront 会返回"X-Cache: Hit from CloudFront"(X-Cache:从 CloudFront 命中)响应。


AWS 官方
AWS 官方已更新 2 年前