调用CloudFront create_invalidation遇无效路径错误的原因咨询
CloudFront CreateInvalidation 报错 InvalidArgument 分析与解决
错误根源
你遇到的InvalidArgument错误,核心原因是缓存失效路径格式不符合CloudFront要求:CloudFront要求所有失效路径必须以斜杠/开头,而你传入的index.html、Movies/index.html都缺少开头的斜杠,这和文件是否已被缓存完全无关——哪怕文件从未被用户请求过,CloudFront也允许提交失效请求(只是不会有实际清理动作),但格式错误会直接触发报错。
修复方法
给每个失效路径添加开头的斜杠即可,修正后的路径应为:
"index_paths": [ "/index.html", "/Movies/index.html" ],
在代码中可以通过简单的字符串拼接统一处理:
# 假设original_paths是你原本生成的路径列表 index_paths = [f"/{path}" for path in original_paths]
额外说明
- 无需区分文件是新建还是已存在/已缓存,只要路径格式正确,CloudFront都会接受失效请求
- 即使路径对应的资源从未被缓存,提交失效请求也不会报错,只是不会产生实际的缓存清理效果
内容的提问来源于stack exchange,提问作者Anentropic
相关产品推荐
相关产品推荐

