AWS Cloudfront CacheBehavior PathPattern 中可接受的通配符

slo*_*p02 6 browser-cache amazon-web-services amazon-cloudfront

尝试在我们的应用程序中设置路径的缓存行为时,AWS 文档仅显示尾随通配符的示例(/images/*https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cloudfront-distribution- cachebehavior.html#cfn-cloudfront-distribution-cachebehavior-pathpattern,以及https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-web-values-specify.html#DownloadDistValuesPathPattern)。

然而,我们使用在路径的其余部分之前实现语言变量的路径模式,例如(/{language}/product/{productId})。

在云形成模板中,在每个变量点中设置带有通配符的 PathPattern 是否可以接受?

IE /*/product/*

如果没有,我用/product/*我相信只有像这样的路线https://website.com/product/{productId}才会被cloudfront拾取来分析,并且像这样的路线https://website.com/en/product/{productId}将会被错过。

Mic*_*bot 7

/*/product/* is valid, and correct, for https://example.com/en/product/{productId}.

也许更正确的做法是,/??/product/*因为?正好匹配 1 个字符,而*匹配 0 个或多个字符。

/product/*与给出的示例不匹配。

另请记住,CloudFront 按优先顺序将请求与路径模式匹配,因此“第一个匹配”(按优先顺序)始终获胜 - 不存在“最佳匹配”或不明确/不确定的路径模式匹配的概念。