CloudFront源路径和缓存行为交互



我有一个CloudFront发行版设置为指向S3存储桶。我的S3存储桶有一个版本控制的文件路径(例如,http://example.s3.us-east-1.amazonaws.com/static/ui/v5.53.3/)。我想配置一个只匹配/static/ui/*路径的缓存行为,但我希望所有到我的原点的请求都具有路径/static/ui/v5.53.3。我试图将我的缓存行为的路径模式设置为/static/ui/*和我的原始路径设置为/v5.53.3,但这似乎不起作用。

我如何在CloudFront中配置这个?

来源路径

如果您希望CloudFront总是从origin中的特定目录请求内容,请输入目录路径,以正斜杠(/)开头。不要在路径末尾添加斜杠(/)。CloudFront将目录路径附加到原域名后。

在您的示例中,源域名为example.s3.us-east-1.amazonaws.com。所以你的原点看到的请求是example.s3.us-east-1.amazonaws.com/v5.53.3/*。这就是为什么它不起作用。

事实上,截至2022年5月,如果不使用Lambda@Edge,这是不可能实现的。你必须在Lambda中重写自定义URL。

最新更新