amazon-cloudfront – Amazon CloudFront – 由regex提供的Inavalidating文件,例如* .PNG

有没有办法让Amazon CloudFront失效(通过管理控制台),使与模式匹配的所有文件无效?例如图片/ *.PNG

背景 –

>我在我的网站上为图像设置了缓存控制,但错误地遗漏了Apache上缓存指令中的png扩展名.所以.gif / .jpg文件缓存在用户计算机上,但.png文件却没有.
>所以我修复了apache指令,现在我的apache服务器提供了带有适当缓存控制指令的png文件.我测试了这个.
>但是云端在过去已经获取了那些png文件,因此通过cloudfront访问那些png文件仍会带来那些没有缓存控制的png文件.最终结果 – 仍然没有用户缓存这些png文件
>我尝试将Amazon CloudFront控制台中的失效设置为images / * .png.控制台说已完成,但我仍然没有在png文件中获取缓存控制指令. – >让我相信失效没有发生.
>我可以为完整的图像目录设置失效;但后来我有太多的图像文件 – >我会收费> 100美元.所以试图避免这种情况.
>更改映像版本以便cloudfront获取新版本是我的代码中的一个痛苦的练习;这样说500 png文件会很痛苦. – >试图避免它.
>列出单个png文件也很痛苦 – >试图避免它.

谢谢,
-Amit

最佳答案 如果您的CloudFront分配在S3存储桶前配置,则可以列出S3存储桶中的所有对象,使用正则表达式模式(例如/*.png/i)对其进行过滤,然后使用该列表构建失效请求.

无论如何,这就是我所做的.我希望这有帮助! 🙂

点赞