Amazon CloudFront
开发人员指南 (API 版本 2016-09-29)
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

CloudFront 使用案例

通过使用 CloudFront,可帮助您实现各种目标。此部分列出了其中的几个以及指向更多信息的链接,以便让您了解这些可能性。

加快静态网站内容分发速度

CloudFront 可以加快将静态内容(例如,图像、样式表、JavaScript 等)传输到全球范围内的查看器的速度。在使用 CloudFront 时,您可以充分利用 AWS 主干网络和 CloudFront 边缘服务器,以便在查看器访问您的网站时为其提供快速、安全且可靠的体验。

存储和交付静态内容的简单方式是使用 Amazon S3 存储桶。将 S3 与 CloudFront 结合使用可获得很多好处,包括可以选择使用源访问身份 (OAI) 来轻松限制对您的 S3 内容的访问。

有关将 S3 与 CloudFront 结合使用的更多信息(包括帮助您快速入门的 AWS CloudFormation 模板),请参阅 Amazon S3 + Amazon CloudFront:在云中进行的匹配

提供按需或实时流视频

CloudFront 提供了多个选项以将媒体流式传输到全球查看器 — 预先录制的文件和实时内容。

  • 对于按需流式传输,您可以使用 CloudFront 以常见格式(如 MPEG DASH、Apple HLS、Microsoft 平滑流和 CMAF)将内容流式传输到任何设备。

  • 对于广播实时流,您可以在边缘站点缓存媒体片段,以便将按正确顺序传输片段的清单文件的多个请求组合起来,从而减小源服务器的负载。

有关如何使用 CloudFront 传输流内容的更多信息,请参阅使用 CloudFront 的按需和实时流视频

在整个系统处理过程中加密特定字段

在使用 CloudFront 配置 HTTPS 时,您已获得与源服务器的安全的端到端连接。在添加字段级加密时,您可以在整个系统处理过程中保护特定的数据并实施 HTTPS 安全,以便只有源中的某些应用程序可以查看数据。

要设置字段级加密,您可以将公有密钥添加到 CloudFront,然后指定要使用该密钥加密的字段集。有关更多信息,请参阅 使用字段级加密帮助保护敏感数据

在边缘站点进行自定义

通过在边缘站点上运行无服务器代码,开启了为查看器自定义内容和体验的很多可能性,并减少了延迟。例如,您可以在源服务器停机进行维护时返回自定义错误消息,查看器不会获得一般 HTTP 错误消息。或者,您可以在 CloudFront 将请求转发到源之前,使用函数来帮助向用户授权并控制对您的内容的访问。

通过将 Lambda@Edge 与 CloudFront 一起使用,可以使用多种方法自定义 CloudFront 传输的内容。要详细了解 Lambda@Edge 以及如何使用 CloudFront 创建和部署函数,请参阅使用 Lambda@Edge 在边缘站点自定义内容。要查看可为您自己的解决方案自定义的大量代码示例,请参阅 Lambda@Edge 示例函数

使用 Lambda@Edge 自定义提供私有内容

使用 Lambda@Edge 可帮助您配置 CloudFront 分配以提供来自您自己的自定义源的私有内容,作为使用签名 URL 或已签名的 Cookie 的选项。

您可以使用多种方法仅限 CloudFront 访问源,包括在防火墙中使用列入白名单的 CloudFront IP,以及使用自定义标头传递共享密钥。

有关更多信息和分步指导(包括示例代码),请参阅使用 Amazon CloudFront 和 AWS Lambda@Edge 提供私有内容