

终止支持通知：2025 年 11 月 13 日，我 AWS 将停止对 AWS MediaStore Elemental 的支持。2025 年 11 月 13 日之后，您将无法再访问 MediaStore 控制台或 MediaStore 资源。有关更多信息，请访问此[博客文章](https://aws.amazon.com/blogs/media/support-for-aws-elemental-mediastore-ending-soon/)。

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

# AWS Elemental 与 HT MediaStore TP 缓存的交互
<a name="cdn-mediastore-interaction-with-http-caches"></a>

AWS Elemental MediaStore 存储对象，以便像亚马逊这样的内容交付网络 (CDNs) 可以正确、高效地缓存这些对象。 CloudFront当最终用户或 CDN 从中检索对象时 MediaStore，该服务会返回影响该对象缓存行为的 HTTP 标头。（HTTP 1.1 缓存行为的标准可在[RFC2616 第 13 节](https://www.w3.org/Protocols/rfc2616/rfc2616-sec13.html)中找到。） 这些标头包括：
+ **`ETag`（不可自定义）** – 实体标签标头是 MediaStore 发送的响应的唯一标识符。符合标准 CDNs 的 Web 浏览器使用此标签作为缓存对象的密钥。 MediaStore 上传时会自动`ETag`为每个对象生成。您可以[查看对象的详细信息](objects-view-details.md)以确定其 ETag 值。
+ **`Last-Modified`（不可自定义）**— 此标题的值表示修改对象的日期和时间。 MediaStore 上传对象时会自动生成此值。
+ **`Cache-Control`（可自定义）** – 此标头的值控制 CDN 应在对象缓存多久后检查该对象是否经过修改。使用 [CLI 或 [AP](https://docs.aws.amazon.com/mediastore/latest/apireference/API_objstore_PutObject.html) I](objects-upload.md) 将对象上传到 MediaStore 容器时，可以将此标头设置为任何值。[HTTP/1.1 文档](https://www.w3.org/Protocols/rfc2616/rfc2616-sec14.html#sec14.9)中介绍了完整的有效值集。如果您在上传对象时未设置此值，则在检索对象时 MediaStore 不会返回此标头。

  Cache-Control 标头的常见用例是指定缓存对象的持续时间。例如，假设您有一个经常被编码器覆盖的视频清单文件。您可以将 `max-age` 设置为 10 以指示对象应仅缓存 10 秒。或者假设您存储了一个永远不会被覆盖的视频段。您可以将此对象的 `max-age` 设置为 31536000，以缓存大约 1 年。

## 有条件请求
<a name="cdn-mediastore-interaction-with-http-caches-conditional-requests"></a>

### 有条件地请求到 MediaStore
<a name="cdn-mediastore-interaction-with-http-caches-conditional-requests-to-mediastore"></a>

MediaStore 对条件请求（使用请求标头，例如`If-Modified-Since`和`If-None-Match`，如中所述 [RFC7232](https://tools.ietf.org/html/rfc7232)）和无条件请求的响应方式相同。这意味着，当 MediaStore 收到有效`GetObject`请求时，即使客户端已经拥有该对象，服务也始终会返回该对象。

### 有条件地请求到 CDNs
<a name="cdn-mediastore-interaction-with-http-caches-conditional-requests-to-cdns"></a>

CDNs 代表提供内容的人 MediaStore 可以通过返回来处理有条件的请求`304 Not Modified`，如[RFC7232 第 4.1 节](https://tools.ietf.org/html/rfc7232#section-4.1)所述。这指示不需要传输完整的对象内容，因为请求者已有一个与有条件请求匹配的对象。

CDNs （以及其他符合 HTTP/1.1 的缓存）根据源服务器转发的`ETag`和`Cache-Control`标头做出这些决定。要控制向 MediaStore 源服务器 CDNs 查询重复检索对象更新的频率，请在将这些对象上传到时为这些对象设置`Cache-Control`标头 MediaStore。