什么是 Amazon CloudFront?
Amazon CloudFront 是一个 Web 服务,它加快将静态和动态 Web 内容(如 .html、.css、.js 和图像文件)分发到用户的速度。CloudFront 通过全球数据中心网络传输内容,这些数据中心称为边缘站点。当用户请求您用 CloudFront 提供的内容时,用户被路由到提供最低延迟 (时间延迟) 的边缘站点,从而以尽可能最佳的性能传送内容。
-
如果该内容已经在延迟最短的边缘站点上,CloudFront 将直接提供它。
-
如果内容没有位于边缘站点中,CloudFront 从定义的源中检索内容,例如,指定为内容最终版本来源的 Amazon S3 存储桶、MediaPackage 通道或 HTTP 服务器(如 Web 服务器)。—
例如,假设您要从传统的 Web 服务器中提供图像,而不是从 CloudFront 中提供图像。例如,您可能会使用 URL http://example.com/sunsetphoto.png
提供图像 sunsetphoto.png。
您的用户可以轻松导航到该 URL 并查看图像。但他们可能不知道其请求从一个网络路由到另一个网络(通过构成 Internet 的相互连接的复杂网络集合),直到找到图像。——
CloudFront 通过 AWS 主干网络将每个用户请求传送到以最佳方式提供内容的边缘站点,从而加快分发内容的速度。通常,这是向查看器提供传输最快的 CloudFront 边缘服务器。使用 AWS 网络可大大降低用户的请求必须经由的网络数量,从而提高性能。用户遇到的延迟(加载文件的第一个字节所花的时间)更短,数据传输速率更高。——
您还会获得更高的可靠性和可用性,因为您的文件(也称为对象)的副本现在存储(或缓存)在全球各地的多个边缘站点上。
主题
如何设置 CloudFront 以传输内容
您可以创建 CloudFront 分配以指示 CloudFront 您希望从何处传输内容,并了解如何跟踪和管理内容传输的详细信息。然后,在有人要查看或使用内容时,CloudFront 使用靠近您的查看器的计算机(边缘服务器)快速传输内容。——

如何配置 CloudFront 以便传输您的内容
-
您指定源服务器(如 Amazon S3 存储桶或您自己的 HTTP 服务器),CloudFront 从该服务器中获取您的文件,然后从全世界的 CloudFront 边缘站点中分配这些文件。
源服务器将存储您的对象的原始最终版本。如果您通过 HTTP 提供内容,源服务器将为 Amazon S3 存储桶或 HTTP 服务器,例如,Web 服务器。您的 HTTP 服务器可以在 Amazon Elastic Compute Cloud (Amazon EC2) 实例或您管理的服务器上运行;这些服务器也称为自定义源。
如果您使用 Adobe Media Server RTMP 协议按需分发媒体文件,则源服务器始终为 Amazon S3 存储桶。
-
您将您的文件上传到源服务器。您的文件也称为对象,通常包括网页、图像和媒体文件,但可以是可通过 HTTP 或支持的 Adobe RTMP(Adobe Flash Media Server 使用的协议)版本提供的任何内容。
如果将 Amazon S3 存储桶作为源服务器,您可以将存储桶中的对象设为公开可读,以便知道这些对象的 CloudFront URL 的任何人都可以访问它们。您还可以选择将对象设为私有,并控制哪些人可以访问它们。请参阅使用签名 URL 和已签名的 Cookie 提供私有内容。
-
您创建一个 CloudFront 分配,在用户通过您的网站或应用程序请求文件时,这会指示 CloudFront 从哪些源服务器中获取您的文件。同时,您还需指定一些详细信息,如您是否希望 CloudFront 记录所有请求以及您是否希望此项分配创建后便立即启用。
-
CloudFront 为新分配指定一个域名,您可以在 CloudFront 控制台中查看该域名,或者返回该域名以响应编程请求(如 API 请求)。如果您愿意,您可以添加要改用的备用域名。
-
CloudFront 将您的分配的配置(而不是您的内容)发送到其所有边缘站点或存在点 — 它们是位于地理位置分散的数据中心(CloudFront 在其中缓存您的文件的副本)内的服务器的集合。
您在开发网站或应用程序时,需使用 CloudFront 为您的 URL 提供的域名。例如,如果 CloudFront 返回 d111111abcdef8.cloudfront.net
以作为您的分配的域名,则 Amazon S3 存储桶(或 HTTP 服务器上的根目录)中 logo.jpg 的 URL 为 http://d111111abcdef8.cloudfront.net/logo.jpg
。
或者,您可以设置 CloudFront 对您的分配使用您自己的域名。在这种情况下,URL 可能是 http://www.example.com/logo.jpg
。
(可选)您可配置源服务器以向文件添加标头,表示您希望文件在 CloudFront 边缘站点的缓存中保留的时间长度。默认情况下,每个文件在边缘站点中保留 24 个小时后即会过期。最小过期时间为 0 秒;没有最大过期时间的限制。有关更多信息,请参阅 管理内容保留在边缘缓存中的时间长度(过期)。