如何阻止 CloudFront 缓存某些文件?

上次更新时间:2019 年 5 月 7 日

我希望 Amazon CloudFront 能够传递某些文件,而不是缓存边缘站点上的文件。该如何操作?

解决方法

要阻止 CloudFront 缓存某些文件,请使用以下任一配置:

有关源的配置

注意:务必更新 CloudFront 分配的缓存行为,以将对象缓存设置为使用源缓存标头

在自定义源 Web 服务器应用程序上,向您不希望 CloudFront 缓存的对象添加 Cache-Control no-cacheno-storeprivate 指令。或者,向您不希望 CloudFront 缓存的对象中添加 Expires 指令。

如果您将 Amazon Simple Storage Service (Amazon S3) 用作源,可以使用对象元数据添加某些 Cache-Control 标头。

有关分配的配置

  1. 打开 CloudFront 控制台
  2. 在 CloudFront 分配列表中,选择要修改的分配。
  3. 选择行为选项卡。
  4. 如果已为您不希望 CloudFront 缓存的对象设置了缓存行为,请选择该缓存行为,然后选择编辑。要创建新的缓存行为,请选择创建行为
  5. 在缓存行为设置中,请输入以下内容以阻止缓存:
    对象缓存中,选择自定义
    TTL 最小值中,输入 0
    TTL 最大值中,输入 0
  6. 选择创建以保存所做的更改。

注意:如果您未将 Amazon S3 存储桶用作源,可以设置特定缓存行为以将所有标头转发到源。要执行此操作,请更新缓存行为,以将基于选定的请求标头的缓存设置为全部