多个子域来源的 cloudfront 路径模式示例

Rak*_*kib 4 cdn amazon-cloudfront

例如,一个 Cloudfront 发行版具有以下关联的 CNAME

photo-cdn.example.com
video-cdn.example.com
music-cdn.example.com
Run Code Online (Sandbox Code Playgroud)

它有以下相关的起源

originA: photo.example.com/photocontents
originB: video.example.com/videocontents
originC: music.example.com/musiccontents
Run Code Online (Sandbox Code Playgroud)

我希望能够通过 Cloudfront 发行版获取以下内容文件,如下所示:

photo-cdn.example.com/photo.jpg => originA/photo.jpg
photo-cdn.example.com/image.png => originA/image.png

video-cdn.example.com/video.mpg => originB/video.mpg
video-cdn.example.com/movie.avi => originB/poster.jpg

music-cdn.example.com/music.mp3 => originC/music.mp3
music-cdn.example.com/itune.wav => originC/albumart.png
Run Code Online (Sandbox Code Playgroud)

我需要使用什么特定路径模式来实现此行为?

路径模式评估是否只发生在分布域路径的 SUFFIX 上(之后music-cdn.example.com/)?

或者路径模式评估是否包括分布域路径(包括music-cdn.example.com)。

Ale*_*x Z 6

只要你没有重叠的文件类型,您可以使用像面具/*.jpg/*.png/*.mpg等。

但它不会工作,例如,如果您需要从您的音乐 CDN 域中获取 .jpg 专辑封面。

在这种情况下,您可能需要将其拆分为 3 个不同的分布,每个分布都有一个 CNAME

编辑:阅读下面的评论以进一步说明路径模式评估实际上评估了 CNAME 的哪些部分

  • 对,就是这样。看看这里的描述:http://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/distribution-web-values-specify.html#DownloadDistValuesPathPattern (2认同)