跳至内容

如何使用 CloudFront 为 S3 存储桶提供 HTTPS 请求?

2 分钟阅读
0

我想配置一个 Amazon CloudFront 分配来为我的 Amazon Simple Storage Service (Amazon S3) 存储桶提供 HTTPS 请求。

解决方法

您的 Amazon S3 存储桶可以使用 Amazon S3 网站端点或 REST API 端点。有关详细信息,请参阅使用 Amazon S3 存储桶。使用 Amazon S3 静态网站端点时,Amazon CloudFront 和 Amazon S3 之间的连接只能通过 HTTP 进行。

创建标准分配

完成以下步骤:

  1. 打开 CloudFront 控制台
  2. 在导航窗格中,选择 Distributions(分配),然后选择 Create distribution(创建分配)。
  3. 输入 Distribution name(分配名称)
  4. 选择 Single website or app(单一网站或应用程序),然后选择 Next(下一步)。
    **注意:**对于除 Amazon Route 53 之外的 DNS 提供商,请跳过域设置。创建分配后,添加您的自定义域和 TLS 证书。
  5. Specify origin(指定来源)页面上,选择 Amazon S3
  6. 对于 Origin(来源),选择您的 S3 存储桶或输入您的 Amazon S3 网站端点域。
  7. 选择 Use recommended origin settings(使用推荐的来源设置)或根据需要进行自定义。然后,选择 Next(下一步)。
  8. Enable security protections(启用安全保护)页面上,配置 AWS WAF。然后,选择 Next(下一步)。
  9. 如果您在步骤 4 中配置了自定义域,则会看到 TLS certificate(TLS 证书)页面。选择以下任一方案:
    • **创建新证书:**CloudFront 为您的域申请新的 AWS Certificate Manager (ACM) 证书。
    • **使用现有证书:**从 us-east-1 AWS 区域中选择现有的 ACM 证书。
  10. 选择 Next(下一步),然后选择 Create distribution(创建分配)。

配置 HTTPS 设置

当您选择 Amazon S3 作为来源类型时,CloudFront 会应用针对 Amazon S3 内容量身定制的默认缓存设置。CloudFront 还会在您的默认行为路径模式中将 Viewer Protocol Policy(查看器协议策略)设置为 Redirect HTTP to HTTPS(HTTP 重定向到 HTTPS)。此模式会自动将所有 CloudFront HTTP 请求重定向到 HTTPS。

查看器协议策略包括以下选项:

  • Redirect HTTP to HTTPS(将 HTTP 重定向到 HTTPS): 自动将 HTTP 请求重定向到 HTTPS。
  • HTTP and HTTPS(HTTP 和 HTTPS): 允许向您的 CloudFront 分配发送 HTTP 和 HTTPS 请求。
  • HTTPS only(仅限 HTTPS): 仅允许向您的 CloudFront 分配发送 HTTPS 请求。

要修改查看器协议策略,请完成以下步骤:

  1. 打开 CloudFront 控制台
  2. 选择您的分配 ID。
  3. 选择 Behaviors(行为)选项卡。
  4. 选择 Default(*)(默认 (*))行为,然后选择 Edit behavior(编辑行为)。
  5. Viewer(查看器)下,选择 Viewer protocol policy(查看器协议策略)。然后,选择您的首选项。
  6. 选择 Save changes(保存更改)。

自定义域设置

要在您的分配中使用自定义域,请在您的分配中添加备用域名。然后,更新您的 DNS 以创建指向 CloudFront 分配域的 CNAME 记录。有关详细信息,请参阅添加备用域名

相关信息

创建分配

要求在 CloudFront 与 Amazon S3 源之间使用 HTTPS 进行通信

如何使用 CloudFront 为 Amazon S3 上托管的静态网站提供服务?

网站端点