如何配置 CloudFront 以通过 HTTPS 使用备用域名来提供我的内容?

2 分钟阅读
0

我想将 CloudFront 配置为通过 HTTPS 使用备用域名来提供我的内容。

简短描述

默认情况下,您只能使用 CloudFront 域名通过 HTTPS 提供内容。但是,您可以将自己的域名与 CloudFront 关联,通过 HTTPS 提供您的内容。

要将您自己的域名与 CloudFront 关联,请添加备用域名(CNAME)

解决方法

在 AWS Certificate Manager(ACM)中申请 SSL 证书或导入您自己的证书

要使用 Amazon 颁发的证书,请参阅申请公有证书

使用公有证书时,请注意:

  • 您必须在美国东部(弗吉尼亚北部)地区申请证书。
  • 您必须拥有使用和申请 ACM 证书的权限。

要使用导入的证书,请参阅将证书导入到 AWS Certificate Manager 中

使用导入的证书时,请注意:

有关详细信息,请参阅将 SSL/TLS 证书与 CloudFront 配合使用的要求

注意: 最佳做法是将您的证书导入到 ACM 中。但是,您也可以将证书导入到 IAM 证书存储区中。

将 SSL 证书和备用域名附加到您的分配中

  1. 访问 CloudFront 控制台
  2. 选择要更新的分配。
  3. 常规选项卡上,选择编辑
  4. 对于备用域名(CNAME),请添加适用的备用域名。用逗号分隔域名,或者在新行中输入每个域名。
    注意: 您尝试添加的备用域名不得有指向其他 CloudFront 分配的 DNS 记录。
  5. 对于 SSL 证书,选择自定义 SSL 证书。然后,从列表中选择一个证书。
    注意: 下拉列表中最多可显示 100 个证书。如果您的证书超过 100 个,并且未列出您想要的证书,请输入证书的 Amazon 资源名称(ARN)。如果您之前已将证书上传到 IAM 证书存储区,但是在下拉列表中没有该证书,请确认您已正确上传证书
  6. 如果您希望 CloudFront 使用专用的 IP 地址提供您的 HTTPS 内容,请启用旧版客户端支持
    **注意:**在使用旧版客户端支持时,如果您将 SSL/TLS 证书与启用该设置的分配相关联,则会产生额外费用。有关详细信息,请参阅 Amazon CloudFront 定价
  7. 选择保存更改

将 CloudFront 配置为要求在查看者与 CloudFront 之间使用 HTTPS

  1. 访问 CloudFront 控制台
  2. 行为选项卡上,选择要更新的缓存行为。然后,选择编辑
  3. 对于查看者协议策略,请选择:
    将 HTTP 重定向到 HTTPS。查看者可以使用这两种协议,但是 HTTP 请求会被自动重定向到 HTTPS 请求。
    -或者-
    仅限 HTTPS。只有当查看者使用 HTTPS 时,才能访问您的内容。如果查看者发送的是 HTTP 请求而不是 HTTPS 请求,则 CloudFront 会返回 HTTP 状态代码 403(已禁止),并且不会返回该文件。
  4. 选择保存更改
  5. 对于您希望在查看者和 CloudFront 之间要求使用 HTTPS 的每个其他缓存行为,重复步骤 1-4。

创建 DNS 记录,将您的域指向 CloudFront 分配

创建别名资源记录集。有了别名资源记录集,则不会对 Route 53 查询收取任何费用。此外,您可以为根域名(example.com)创建别名资源记录集,而 DNS 不允许为 CNAME 创建别名资源记录集。有关详细信息,请参阅配置 Amazon Route 53 以将流量路由到 CloudFront 分配

使用其他 DNS 服务提供商

使用您的 DNS 服务提供商提供的方法为您的域添加 CNAME 记录。CNAME 记录会将 DNS 查询从您的备用域名(例如:www.example.com)重定向到您的分配的 CloudFront 域名(例如:example.cloudfront.net)。

AWS 官方
AWS 官方已更新 2 年前