跳至内容

如何从 CloudFront 中移除缓存文件?

1 分钟阅读
0

我想从 Amazon CloudFront 中移除缓存文件。

简短描述

CloudFront 根据来源响应中的缓存控制标头在边缘站点缓存响应。CloudFront 还根据分配缓存行为中的最小、最大和默认生存时间 (TTL) 值来缓存响应。

根据您配置的值,CloudFront 会提供缓存文件,直到缓存过期。要立即提供更新后的文件,请使文件失效以从 CloudFront 的缓存中移除对象。

**注意:**您无法让使用 Cookie、查询字符串或标头来区分响应的某个对象的特定版本失效。让文件失效会删除对象的所有版本。

解决方法

**注意:**如果在运行 AWS 命令行界面 (AWS CLI) 命令时收到错误,请参阅 AWS CLI 错误故障排除。此外,请确保您使用的是最新版本的 AWS CLI

使用 AWS 管理控制台使文件失效

要使用 AWS 管理控制台使文件失效,请参阅 Invalidate files to remove content(使文件失效以删除内容)

**重要事项:**如果您使文件失效,可能会产生费用。有关信息,请参阅 Pay for file invalidation(为文件失效付费)

使用 AWS CLI 命令使文件失效

要使文件失效,请运行以下 create-invalidation AWS CLI 命令:

aws cloudfront create-invalidation --distribution-id example-distribution-ID --paths "/example-path/index.html"

**注意:**将 example-distribution-ID 替换为用于分配您的文件的分配 ID,将 /example-path/index.html 替换为您的文件路径。该命令将返回 get-invalidation AWS CLI 命令的标识符 ID。

要查找失效的当前状态,请运行以下 get-invalidation AWS CLI 命令:

aws cloudfront get-invalidation --id identifier-id --distribution-id example-distribution-ID

**注意:**将 example-distribution-ID 替换为用于分配您的文件的分配 ID,将 identifier-id 替换为失效的标识符 ID。

要轮询失效状态直至失效完成,请运行以下 invalidation-completed AWS CLI 命令:

aws cloudfront wait invalidation-completed --id identifier-id --distribution-id example-distribution-ID

**注意:**将 example-distribution-ID 替换为用于分配您的文件的分配 ID,将 identifier-id 替换为失效的标识符 ID。

相关信息

为什么 CloudFront 还在提供 Amazon S3 中已过时的内容?