S3提供gzip资源。 CloudFront没有。为什么?

时间:2013-09-13 19:45:43

标签: ruby-on-rails heroku amazon-web-services amazon-s3 amazon-cloudfront

我为我的静态资产设置了Amazon S3存储桶,并将CloudFront配置为指向它。我在Heroku上有一个Rails 4应用程序。

当我设置config.action_controller.asset_host = "https://" + Figaro.env.FOG_DIRECTORY + ".s3.amazonaws.com"时,我会获取gzip资源。

当我设置config.action_controller.asset_host = "http://" + Figaro.env.CLOUDFRONT_DIRECTORY + ".cloudfront.net"时,我没有获取gzip资源。为什么不呢?

1 个答案:

答案 0 :(得分:2)

<强>更新

即使源服务器返回未压缩的文件,CloudFront现在也可以压缩文件。这仅适用于介于1KB和10MB之间的specific file types。有关详细信息,请参阅我在下面发布的原始链接。


原始答案:

CloudFront不会自行执行任何压缩/解压缩。如果您在S3上有压缩文件和CloudFront中的未压缩文件,则很可能是缓存问题,其中CloudFront提供较旧的未压缩文件版本。尝试在CloudFront上invalidate这些文件。

您可以在此处了解有关CloudFront压缩的更多信息:

http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/ServingCompressedFiles.html