开始使用简单的 CloudFront 分配 - Amazon CloudFront
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

开始使用简单的 CloudFront 分配

此部分中的过程将介绍如何使用 CloudFront 设置执行以下操作的基本配置:

  • 将对象的原始版本存储在一个 Amazon Simple Storage Service (Amazon S3) 存储桶中

  • 使您的对象可供所有人访问

  • 将 URL 中的 CloudFront 域名用于您的对象(例如,http://d111111abcdef8.cloudfront.net/index.html

  • 在 CloudFront 边缘站点上将您的对象保留默认的 24 小时持续时间(最短持续时间为 0 秒)

其中的大多数选项是可自定义的。例如,您可以将内容存储在您自己的 Web 服务器上,而不是存储在 S3 存储桶中,并且您可以限制可使用签名 URL 或 Cookie 访问该内容的人员。有关如何自定义 CloudFront 分配选项的信息,请参阅创建分配的步骤(概述)

您仅需完成几个基本步骤即可开始使用 CloudFront 交付您的内容。第一步是注册。接下来,您创建一个 CloudFront 分配,然后使用网页或应用程序的 URL 中的 CloudFront 域名引用内容。

先决条件

开始之前,请确保您已完成设置 Amazon CloudFront中的步骤。

第 1 步:将您的内容上传到 Amazon S3,然后授予对象权限

Amazon S3 存储桶是文件(对象)或文件夹的容器。CloudFront 可以使用 Amazon S3 存储桶作为源为您分发几乎任何类型的文件。例如,CloudFront 可以分配文本、图像和视频。您可以在 Amazon S3 上存储的数据量没有上限。

默认情况下,您的 Amazon S3 存储桶和其中的所有文件都是私有的,只有创建该存储桶的 AWS 账户有权读取或写入文件。如果要允许任何人使用 CloudFront URL 访问您的 Amazon S3 存储桶中的对象,您必须授予对象公共读取权限。

注意

如果您想限制能够下载您的内容的人,可以使用 CloudFront 私有内容功能。更多有关分配私有内容的信息,请参阅 使用签名 URL 和签名 Cookie 提供私有内容

将您的内容上传至 Amazon S3 并授予每个人读取权限

  1. 登录 AWS 管理控制台,并通过以下网址打开 Amazon S3 控制台:https://console.aws.amazon.com/s3/

  2. 选择 Create bucket (创建存储桶)

  3. 对于存储桶名称,请输入存储桶的名称。

    重要

    要使存储桶能够用于 CloudFront,其名称必须符合 DNS 命名要求。有关更多信息,请参阅《Amazon Simple Storage Service 开发人员指南》中的存储桶限制

  4. 对于区域,请为您的存储桶选择一个 AWS 区域。我们建议您选择一个靠近您的区域,以优化延迟并尽可能降低成本,或者,您可以选择另一个区域以满足法规要求。

  5. 阻止存储桶的公有访问设置部分中,取消选中阻止所有公有访问复选框。

    您必须允许公开读取存储桶和文件,以便 CloudFront URL 可以提供来自存储桶的内容。但是,您可以使用 CloudFront 私有内容功能限制对特定内容的访问。有关更多信息,请参阅 使用签名 URL 和签名 Cookie 提供私有内容

    选中我确认当前设置可能会导致此存储桶及其中的对象变为公有。复选框。

  6. 将所有其他设置保留默认值,然后选择创建存储桶

  7. (可选)如果您没有自己的网站内容,或者您只是想在上传自己的内容之前试用 CloudFront,请使用以下链接下载简单的 hello world 网页:hello-world-html.zip

  8. 存储桶部分中,选择新的存储桶,然后选择上传

  9. 使用上传页面将您的内容添加到 S3 存储桶。如果您已下载简单的 hello world 网页,请添加 index.html 文件和 css 文件夹(其中包含 style.css 文件)。

  10. 选择其他上传选项以展开此部分。

  11. 访问控制列表 (ACL) 部分中,选中对象列中所有人(公有访问)旁边的读取复选框。

  12. 选中我理解这些更改对指定对象的影响。复选框

  13. 选择页面底部的上传

    上传完成后,您可通过其 URL 导航到该项目。例如:

    https://<bucket name>.s3-<AWS Region>.amazonaws.com/<object name>

    根据您的存储桶和内容,将 <bucket name><AWS Region><object name> 替换为适当值。如果您在此过程中使用了简单的 hello world 网站,请将 <object name> 替换为 index.html

    注意

    如果您在美国东部(弗吉尼亚北部)区域 (us-east-1) 创建了存储桶,请省略 URL 中的 <AWS Region> 部分。例如:

    https://<bucket name>.s3.amazonaws.com/<object name>

    使用 Amazon S3 URL 验证是否可以公开访问您的内容,但要记住,这不是您通过 CloudFront 访问内容时要使用的 URL。

步骤 2:创建 CloudFront 分配

创建 CloudFront 分配

  1. 通过以下网址打开 CloudFront 控制台: https://console.aws.amazon.com/cloudfront/

  2. 选择创建分配,然后选择开始使用

  3. 对于源设置下的源域名,选择您之前创建的 Amazon S3 存储桶。

    对于源设置下的其他设置,请接受默认值。

  4. 对于默认缓存行为设置下的设置,请接受默认值。

    有关缓存行为选项的更多信息,请参阅 缓存行为设置

  5. 对于分配设置下的设置,请接受默认值。

    有关分配选项的更多信息,请参阅 分配设置

  6. 在页面底部,选择创建分配

  7. 在CloudFront 创建了分配后,分配的状态列的值将从进行中更改为已部署。这通常需要花费几分钟的时间。

    记录 CloudFront 指派给分配的域名,这些域名会出现在分配列表中。(它同时也出现在选定分配的“General”选项卡上。) 其内容类似于以下所示:d111111abcdef8.cloudfront.net

步骤 3:通过 CloudFront 访问您的内容

要通过 CloudFront 访问您的内容,请将 CloudFront 分配域名与内容访问路径组合在一起。例如,您的分配域名应类似于以下所示:d111111abcdef8.cloudfront.net。按照传统做法,网站主页的访问路径是 /index.html。在本例中,您可以通过 CloudFront 从类似于以下内容的 URL 中访问您的内容:

https://d111111abcdef8.cloudfront.net/index.html

如果您按照上述步骤操作并使用了简单的 hello world 网页,您应该看到以下网页内容:


					Hello world 网页。

将新内容上传到 S3 存储桶时,您可以将 CloudFront 分配域名(例如,d111111abcdef8.cloudfront.net)与 S3 存储桶中的对象路径组合在一起,从而通过 CloudFront 访问内容。例如,如果您已将名为 new-page.html 的新文件上传到 S3 存储桶的根目录,则可以通过 CloudFront 从类似于以下内容的 URL 中访问此页面:

https://d111111abcdef8.cloudfront.net/new-page.html

您已成功配置 CloudFront 以提供存储在 Amazon S3 中的网站内容。如果您想更进一步,可以将 CloudFront 分配配置为使用自定义域名(例如,使用 www.example.com 而不是 d111111abcdef8.cloudfront.net)。有关更多信息,请参阅 使用自定义 URL