【发布时间】:2016-06-06 01:29:40
【问题描述】:
AWS now supports gzipping files through CloudFront
我已按照Serving Compressed Files 中的所有说明进行操作,但 gzipping 无法正常工作。
我有一个 S3 存储桶设置为 CloudFront 用作源的网站。
-
Compress Objects Automatically已启用 - 我正在提供具有正确内容类型的文件,例如
application/javascript和text/css - 文件在 1,000 和 10,000,000 字节以内
- 据我所知,S3 网站使用
Content-Length提供文件 - 为了更加确定没有缓存任何内容,我既使整个 S3 存储桶失效,又将较新版本的文件上传到 S3。
- 此外,我使用的网络浏览器 Chrome 确实接受 gzip 压缩文件。
尽管如此,我还是无法让 gzipping 工作。我已经让包括 SSL 在内的所有其他内容都运行良好,您可以在此处访问该站点:https://formulagrid.com/
如果您打开 chrome 控制台,您会注意到从 S3 提供的所有文件都没有经过 gzip 压缩。唯一的 gzip 压缩文件(例如 google 字体)是我从其他 CDN 获取的文件。
【问题讨论】:
-
感谢您分享实际链接——这应该可以让人们更容易发现正在发生的事情。您的对象存储在 S3 中没有
Content-Encoding:标头,对吗?他们应该是这样的。如果您可以访问世界其他地方的系统,您可以尝试curl -v并查看通过不同边缘的请求的行为是否有所不同。 -
@Michael-sqlbot 是的,他们只有
Content-Type。我注意到的另一件事是,我的 index.html 似乎实际上正在被 gzip 压缩,但这恰好是不一致的,这让我更加困惑。 -
@Michael-sqlbot 它开始工作了...猜猜它需要一天或什么时间...
-
“在极少数情况下,当 CloudFront 边缘站点异常繁忙时,某些文件可能不会被压缩。” 这是一项新功能,并且可能非常受欢迎。 .. 他们可能在您的边缘位置满足了一些暂时的意外需求。 (也就是说,您要通过它进行测试。)
-
像这样“召唤”的人通常会受到社区的反对。如果您适当地标记问题,专家会看到您的问题。
标签: amazon-web-services amazon-s3 gzip amazon-cloudfront