AWS CloudFront 仅使根目录中的对象无效

问题描述

是否有办法仅使 AWS CloudFront 分配中根级别的对象无效。

假设我有以下分布。我希望能够使 index.htmlphoto1.jpgphoto2.jpg 无效,但不能使 subdir/ 及其中的文件无效。

index.html
photo1.jpg
photo2.jpg
subdir/
   photo3.jpg
   photo2.jpg

解决方法

您可以尝试通过将文件名分组为通用前缀来使无效。

在上面的示例中,以下路径将起作用

  • /索引*
  • /照片*

不幸的是,Cloudfront 要求通配符 (*) 位于路径的末尾,因此您无法通过对象扩展名无效。

参考: https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/Invalidation.html#invalidation-specifying-objects-paths

,

这是不可能的,您可以做的是使具有某些前缀的文件无效,例如

/logo*

只会使具有该名称和不同扩展名的文件无效,例如 logo.pnglogo.jpglogo.gif 等。但是如果您有一个名为 logo 的目录,它将无效也是