You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用Terraform失效上传至S3的本地文件对应的CloudFront缓存?

针对S3+CloudFront的本地文件变更缓存失效方案

我自己的场景是把本地文件上传到S3桶后通过CloudFront分发,需要在文件更新时触发CloudFront缓存失效,下面是我在用的方案——虽然有不少局限,但刚好能满足我的需求:

实现方式

  • 写个简单的本地脚本,把文件上传S3和缓存失效操作绑在一起:
    1. 先用AWS CLI把本地文件同步到S3:aws s3 cp ./updated-file.js s3://my-static-bucket/assets/
    2. 紧接着调用CloudFront失效API,指定刚上传的文件路径:aws cloudfront create-invalidation --distribution-id XXXXXXX --paths "/assets/updated-file.js"
  • 如果是批量更新文件,可以把失效路径设为通配符(比如"/assets/*"),减少API调用次数

方案局限

  • 单文件失效会产生CloudFront API调用成本,批量操作更经济但我场景里用不上
  • 缓存失效不是实时的,通常要等1-5分钟才会生效
  • 依赖本地环境已经配置好AWS CLI的权限和凭证,换机器得重新配置

内容的提问来源于stack exchange,提问作者Algamest

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.04 12:15:26