使用 CloudFront 发行版更新现有内容 - Amazon CloudFront
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

使用 CloudFront 发行版更新现有内容

有两种方法可以更新为你分发的现有内容: CloudFront

  • 使用相同的名称更新文件

  • 在文件名中使用版本标识符进行更新

我们建议您在文件名或文件夹名称中使用版本标识符,以帮助您更好地控制所提供的 CloudFront 内容。

使用版本控制的文件名更新现有文件

更新 CloudFront 发行版中的现有文件时,我们建议您在文件名或目录名中包含某种版本标识符,以便更好地控制您的内容。此标识符可能是日期时间戳、序列号、或区别同一对象的两种版本的其他方法。

例如,取代命名图像文件 image.jpg,您可称之为 image_1.jpg。当您想开始提供新版本的文件时,您需要将新文件命名为 image_2.jpg,并且更新 Web 应用程序或网站中的链接以指向 image_2.jpg。此外,您可将所有的图形放在 image_v1 目录中,且当您想开始提供一个或多个图像的新版本时,您会创建新的 image_v2.jpg 目录,并且您会更新指向该目录的链接。使用版本控制,您无需等待对象过期即可 CloudFront 开始提供其新版本,也不必为对象失效付费。

即使您对文件进行版本控制,我们仍建议您设置到期日期。有关更多信息,请参阅 管理内容保留在缓存中的时间长度(过期)

注意

指定版本控制的文件名或目录名与 Amazon S3 对象版本控制无关。

使用相同的文件名更新现有内容

尽管您可以更新 CloudFront 发行版中的现有文件并使用相同的文件名,但我们不建议这样做。 CloudFront 只有在请求文件时,才会将文件分发到边缘位置,而不是在原始服务器中放置新文件或更新文件时。如果您使用具有相同名称的较新版本更新源中的现有文件,边缘站点不会从源中获取新版本,除非发生以下两种情况:

如果您在替换文件时使用相同的名称,则无法控制何时 CloudFront 开始提供新文件。默认情况下,在边缘位置将文件 CloudFront 缓存 24 小时。(有关更多信息,请参阅 管理内容保留在缓存中的时间长度(过期)。) 例如,如果您在整个网站上替换所有文件:

  • 不太受欢迎页面的文件不会出现在任何边缘站点。在下次请求时将开始提供这些文件的新版本。

  • 有些页面的文件可能在一些边缘站点中而不在其他边缘站点中,因此,最终用户根据提供对象的边缘站点将会看到不同的版本。

  • 最受欢迎页面的新版本文件可能在 24 小时内无法提供,因为 CloudFront 可能在您用新版本替换文件之前已经检索了这些页面的文件。