添加备用域名 - Amazon CloudFront
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

添加备用域名

以下任务列表描述了如何使用 CloudFront 控制台将备用域名添加到分配中,以便您可以在链接中使用自己的域名而非 CloudFront 域名。有关使用 CloudFront API 更新您的分配的信息,请参阅配置分配

注意

如果您希望查看器使用 HTTPS 和您的备用域名,请参阅 使用备用域名和 HTTPS

开始之前:确保执行了以下操作,然后再更新分配以添加备用域名:

  • 向 Route 53 或其他域注册商注册该域名。

  • 从包含该域名的授权证书颁发机构 (CA) 获取 SSL/TLS 证书。将证书添加至您的分配中以验证您是否有权使用该域。有关更多信息,请参阅 使用备用域名的要求

添加备用域名
  1. 登录 Amazon Web Services Management Console,并通过以下网址打开 CloudFront 控制台:https://console.amazonaws.cn/cloudfront/v4/home

  2. 为要更新的分配选择 ID。

  3. General 选项卡上,选择 Edit

  4. 更新以下值:

    备用域名 (CNAME)

    添加备用域名。用逗号隔开多个域名,或在新行中键入每个域名。

    SSL 证书

    选择以下设置:

    • 使用 HTTPS – 选择自定义 SSL 证书,然后从列表中选择证书。该列表包含 Amazon Certificate Manager (ACM) 预置的证书、您从另一个证书颁发机构购买并上传到 ACM 的证书以及您从另一个证书颁发机构购买并上传到 IAM 证书存储的证书。

      如果您已将证书上传到 IAM 证书存储,但该证书未显示在列表中,请检查过程 导入 SSL/TLS 证书,确认您已正确上传证书。

      如果您选择此设置,建议您只在对象 URL 中使用一个备用域名 (https://www.example.com/logo.jpg)。如果您使用您的 CloudFront 分配域名 (https://d111111abcdef8.cloudfront.net.cloudfront.net/logo.jpg),则查看器的工作方式可能如下所示,具体取决于您为支持的客户端选择的值:

      • 所有客户端:如果查看器不支持 SNI,它将显示警告,因为 CloudFront 域名与 TLS/SSL 证书中的域名不匹配。

      • 仅支持服务器名称指示 (SNI) 的客户端:CloudFront 将删除与查看器的连接而不返回对象。

    支持的客户

    选择一个选项:

    • 所有客户端:CloudFront 使用专用 IP 地址提供您的 HTTPS 内容。如果您选择该选项,则当您将 SSL/TLS 证书与已启用的分配关联时,将产生额外的费用。有关更多信息,请参阅 Amazon CloudFront 定价

    • 仅限支持服务器名称指示 (SNI) 的客户端:不支持 SNI 的旧版浏览器或其他客户端必须使用其他方法访问您的内容。

    有关更多信息,请参阅 选择 CloudFront 如何处理 HTTPS 请求

  5. 选择是,编辑

  6. 在分配的 General 选项卡上,确认 Distribution Status 已更改为 Deployed。如果您试图在部署对分配的更新之前使用备用域名,您在以下步骤创建的链接可能无法正常工作。

  7. 配置备用域(例如 www.example.com)的 DNS 服务,以将流量路由到您的分配的 CloudFront 域名(如 d111111abcdef8.cloudfront.net)。您使用的方法取决于您是将 Route 53 还是另一个供应商作为域的 DNS 服务提供商。

    注意

    如果您的 DNS 记录已指向的分配并不是您要更新的分配,则您只能在更新 DNS 后才能向分配中添加备用域名。有关更多信息,请参阅 备用域名的使用限制

    Route 53

    创建别名资源记录集。有了别名资源记录集,您就不用付款进行 Route 53 查询了。此外,您可以为根域名 (example.com) 创建别名资源记录集,而 DNS 不允许 CNAME。有关更多信息,请参阅《Amazon Route 53 开发人员指南》中的使用域名将流量路由到 Amazon CloudFront Web 分配

    其他 DNS 服务提供商

    使用 DNS 服务提供商提供的方法为域添加 CNAME 记录。这一新的 CNAME 记录将来自备用域名(例如,www.example.com)的 DNS 查询重新导向到分配的 CloudFront 域名(例如,d111111abcdef8.cloudfront.net)。有关更多信息,请参阅 DNS 服务提供商提供的文档。

    重要

    如果您的域名已有现有的 CNAME 记录,请更新此记录或将其替换为指向分配的 CloudFront 域名的新记录。

  8. 使用 dig 或类似的 DNS 工具,确认您在上一步创建的 DNS 配置指向分配的域名。

    以下示例显示了 www.example.com 域上的 dig 请求以及响应的相关部分。

    PROMPT> dig www.example.com ; <<> DiG 9.3.3rc2 <<> www.example.com ;; global options: printcmd ;; Got answer: ;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 15917 ;; flags: qr rd ra; QUERY: 1, ANSWER: 9, AUTHORITY: 2, ADDITIONAL: 0 ;; QUESTION SECTION: ;www.example.com. IN A ;; ANSWER SECTION: www.example.com. 10800 IN CNAME d111111abcdef8.cloudfront.net. ...

    回答部分显示了将针对 www.example.com 的查询路由到 CloudFront 分配域名 d111111abcdef8.cloudfront.net 的 CNAME 记录。如果 CNAME 右侧的名称是 CloudFront 分配的域名,则正确配置了 CNAME 记录。如果是其他任何值(如 Amazon S3 存储桶的域名),则未正确配置 CNAME 记录。在这种情况下,请回到步骤 7,纠正 CNAME 记录以指向分配的域名。

  9. 通过访问具有您的域名而不是分配的 CloudFront 域名的 URL 来测试备用域名。

  10. 在您的应用程序中,更改对象的 URL 以使用您的备用域名而不是 CloudFront 分配的域名。