

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 使用自定义域名为你的 Lightsail 发行版提供内容
<a name="amazon-lightsail-enabling-distribution-custom-domains"></a>

为您的 Amazon Lightsail 分发启用自定义域名，以便在分配中使用您的注册域名。在启用自定义域之前，您的分配仅接受在您首次创建分配时与之关联的默认域（例如，`123456abcdef.cloudfront.net`）的流量。启用自定义域名时，必须选择为要用于分发的域名创建的 Lightsail SSL/TLS 证书。启用自定义域后，您的分配将接受与所选证书关联的所有域的流量。

**重要**  
每个分配一次只能使用一个证书。如果您在分配中禁用自定义域，则您的分配将无法再处理已注册域的 HTTPS 流量，直至您重新启用自定义域。  
与该 SSL/TLS 证书关联的域名不能被所有亚马逊云科技服务 (AWS) 账户的其他分配（包括亚马逊 CloudFront服务上的分配）使用。您可以为域创建证书，但您将无法将其用于您的分配。

有关分配的更多信息，请参阅[内容分发网络分配](amazon-lightsail-content-delivery-network-distributions.md)。

## 先决条件
<a name="enable-distribution-custom-domains-prerequisite"></a>

在开始之前，你需要创建一个 Lightsail 发行版。有关更多信息，请参阅[创建分配](amazon-lightsail-creating-content-delivery-network-distribution.md)。

您还应该为分发创建并验证 SSL/TLS 证书。有关更多信息，请参阅[为您的发行版创建 SSL/TLS 证书和验证发行版](amazon-lightsail-create-a-distribution-certificate.md)[的 SSL/TLS 证书。](amazon-lightsail-validating-a-distribution-certificate.md)

## 启用分配的自定义域
<a name="enable-distribution-custom-domains"></a>

完成以下过程以启用分配的自定义域。

1. 登录 [Lightsail 控制台](https://lightsail.aws.amazon.com/)。

1. 在左侧导航窗格中，选择**联网**。

1. 选择要为其启用自定义域的分配名称。

1. 在分配的管理页面上选择**自定义域**选项卡。

1. 选择**附加证书**。

   如果您没有证书，则必须首先创建和验证域的 SSL/TLS 证书，然后才能将证书附加到您的分配。有关更多信息，请参阅[为您的发行版创建 SSL/TLS 证书](amazon-lightsail-create-a-distribution-certificate.md)。

1. 在显示的下拉菜单中，为要用于分配的域选择有效证书。

1. 验证证书信息是否正确，然后选择 **Attach**（附加）。

1. 分配的 **Status**（状态）将更改为 **Updating**（正在更新）。在状态变为 **Enabled**（已启用）后，证书的域将在 **Custom domains**（自定义域）部分中显示。

1. 选择 **Add domain assignment**（添加域分配）将域指向您的分配。

1. 验证证书和 DNS 信息是否正确，然后选择 **Add assignment**（添加分配）。稍等片刻，您选择的域的流量将开始被分配接受。

**Topics**
+ [先决条件](#enable-distribution-custom-domains-prerequisite)
+ [启用分配的自定义域](#enable-distribution-custom-domains)
+ [将域指向分配](amazon-lightsail-point-domain-to-distribution.md)
+ [更改自定义域](amazon-lightsail-changing-distribution-custom-domains.md)
+ [禁用分配自定义域](amazon-lightsail-disabling-distribution-custom-domains.md)
+ [将分配域添加到容器服务](amazon-lightsail-adding-distribution-default-domain-to-container-service.md)

# 将自定义域名指向 Lightsail 发行版
<a name="amazon-lightsail-point-domain-to-distribution"></a>

在为分配启用自定义域名后，您必须将注册的域名指向您的 Amazon Lightsail 分配。您可以通过将别名记录添加到用于分配的证书上指定的每个域的 DNS 区域中，来执行此操作。您添加的所有记录都应该指向分配的默认域（例如 `123456abcdef.cloudfront.net`）。

在本指南中，我们为您提供了使用 Lightsail DNS 区域将您的域名指向您的发行版的程序。使用其他 DNS 托管服务提供商（例如 Domain.com 或 GoDaddy）将您的域名指向您的分发的程序可能类似。[有关 Lightsail DNS 区域的更多信息，请参阅 DNS。](understanding-dns-in-amazon-lightsail.md)

有关分配的更多信息，请参阅[创建分配](amazon-lightsail-creating-content-delivery-network-distribution.md)。

**内容**
+ [步骤 1：完成先决条件](#point-domain-to-distribution-prerequisite)
+ [步驟 2：获取分配的默认域](#get-distribution-default-domain-name)
+ [步骤 3：将记录添加到域的 DNS 记录](#add-distribution-alias-record-to-dns-zone)

## 步骤 1：完成先決条件
<a name="point-domain-to-distribution-prerequisite"></a>

在开始之前，您应该为 Lightsail 发行版启用自定义域名。有关更多信息，请参阅[启用分配的自定义域](amazon-lightsail-enabling-distribution-custom-domains.md)。

## 步驟 2 ：获取分配的默认域
<a name="get-distribution-default-domain-name"></a>

完成以下过程以获取分配的默认域名，您可以在将别名记录添加到域的 DNS 中时指定该域名。

1. 登录 [Lightsail 控制台](https://lightsail.aws.amazon.com/)。

1. 在左侧导航窗格中，选择**联网**。

1. 选择要获取默认域名的分配名称。

1. 在分配管理页面的标题部分，记下分配的默认域名。分配的默认域名类似于 `123456abcdef.cloudfront.net`。

   您必须将此值添加为域的 DNS 中的别名记录的一部分。我们建议您将此值复制并粘贴到文本文件中，以供之后参考。继续本教程中接下來的[步骤 3：将记录添加到域的 DNS 区域](#add-distribution-alias-record-to-dns-zone)部分。

## 步骤 3：将记录添加到域的 DNS 记录
<a name="add-distribution-alias-record-to-dns-zone"></a>

完成以下步骤以将记录添加到您所在域的 DNS 区域。

1. 在左侧导航窗格中，选择**域和 DNS**。

1. 在页面的 **DNS 区域**部分下方，选择要添加记录的域名，以将域的流量引导到您的分配。

1. 选择 **DNS records**（DNS 记录）选项卡。然后，选择 **Add record**（添加记录）。

1. 根据您要指向分配的域类型，完成以下步骤之一：
   + 选择一个地址 (A) 记录以将顶级域（例如 `example.com`）指向您的分配。

     如果顶级域的 A 记录已存在于您的 DNS 区域中，则您需要编辑该现有记录，而不是添加另一个 A 记录。
   + 选择一个规范名称（CNAME）以将子域（例如 `website.example.com`）指向您的分配。

1. 如果要添加 A 记录，则在**解析到**文本框中选择分配的名称。如果要添加别名记录，则在**映射到**文本框中输入分配的默认域名。
**注意**  
当您将 A 记录添加到 DNS 区域并选择分配的名称时，实际上是在添加别名记录，该记录与地址记录不同。Lightsail 使您可以轻松添加别名记录，而无需执行其他 DNS 托管提供商通常需要的额外步骤。

1. 选择保存图标以将记录保存到 DNS 区域。

   重复这些步骤，为您用于分配的证书上的域添加其他 DNS 记录。留出时间以便更改通过 Internet 的 DNS 传播。几分钟后，您应能够查看您的域是否指向您的分配。您还应该测试您的分配。有关更多信息，请参阅下面的[测试分配](amazon-lightsail-testing-distribution.md)。

# 更新 Lightsail 分配的 SSL/TLS 证书域
<a name="amazon-lightsail-changing-distribution-custom-domains"></a>

您可以将 Amazon Lightsail 分配使用的自定义域更改为另一个域或另一组域。为此，您必须首先为要用于分配的域创建新的 SSL/TLS 证书。有关更多信息，请参阅[创建分配的 SSL/TLS 证书](amazon-lightsail-create-a-distribution-certificate.md)。验证新证书后，将旧证书交换为新证书，从而更改分配的自定义域。

有关分配的更多信息，请参阅[创建分配](amazon-lightsail-creating-content-delivery-network-distribution.md)。

## 更改分配的自定义域
<a name="changing-distribution-custom-domains"></a>

完成以下过程以更改分配的自定义域。

1. 登录 [Lightsail 控制台](https://lightsail.aws.amazon.com/)。

1. 在左侧导航窗格中，选择**联网**。

1. 选择要为其更改默认自定义域的分配名称。

1. 在分配的管理页面上选择**自定义域**选项卡。

1. 分离当前附加到分配的 SSL/TLS 证书。

   分配的状态将更改为 **In progress**（正在进行）。

1. 分配的状态变回 **Enabled**（已启用）后，选择 **Attach certificate**（附加证书）。

1. 在显示的下拉菜单中，为要用于分配的域选择有效证书。

1. 验证证书信息是否正确，然后选择 **Attach**（附加）。

1. 向域的 DNS 添加域分配，以将域指向分配。

   分配的 **Status**（状态）将更改为 **Updating**（正在更新）。将状态更改为 **Ready**（就绪）后，证书的域将在 **Custom domains**（自定义域）部分中显示。选择 **Add domain assignment**（添加域分配）将域指向您的分配。

1. 选择 **Add assignment**（添加分配）。稍等片刻，您选择的域的流量将开始被分配接受。

1. 选择**保存**。

# 禁用 Lightsail 发行版的自定义域名
<a name="amazon-lightsail-disabling-distribution-custom-domains"></a>

禁用您的 Amazon Lightsail 分发的自定义域名，以停止在分配中使用您的注册域名。禁用自定义域后，您的分配将仅接受在您首次创建分配时与之关联的默认域（例如，`123456abcdef.cloudfront.net`）的流量，对于之前关联的自定义域的流量，将显示 403 错误。

有关分配的更多信息，请参阅[内容分发网络分配](amazon-lightsail-content-delivery-network-distributions.md)。

## 禁用分配的自定义域
<a name="disable-distribution-custom-domains"></a>

完成以下过程以禁用分配的自定义域。

1. 登录 [Lightsail 控制台](https://lightsail.aws.amazon.com/)。

1. 在左侧导航窗格中，选择**联网**。

1. 选择要禁用自定义域的分配名称。

1. 在分配的管理页面上选择**自定义域**选项卡。

   **自定义域名**页面显示当前附加到您的分配的 SSL/TLS 证书（如果有）。

1. 请选择以下选项之一：

   1. 选择 **Configure distribution domains**（配置分配域）取消选择之前选定的域，或选择更多与分配关联的域。

   1. 选择**分离**将证书从分配中分离，再删除其所有关联的域。

1. 将提交禁用自定义域的请求，并且分配的状态将更改为**正在进行**。过段时间以后，分配状态将更改为**已启用**。

禁用自定义域后，您的分配将仅接受在您首次创建分配时与之关联的默认域（例如，`123456abcdef.cloudfront.net`）的流量，对于之前关联的自定义域的流量，将显示 403 错误。您应更新域的 DNS 记录，以便将这些域的流量引导到另一个资源。

# 将分配的默认域添加到 Lightsail 容器服务
<a name="amazon-lightsail-adding-distribution-default-domain-to-container-service"></a>

您可以选择 Amazon Lightsail 容器服务作为内容分发网络 (CDN) 分发的来源。然后，该分配会缓存并提供您的容器服务上托管的网站或 Web 应用程序。如果你在 Lightsail 容器服务中使用 Lightsail 发行版，Lightsail 会自动将你的分配的默认域名作为自定义域添加到你的容器服务上。这使流量能够在您的分配和容器服务之间进行路由。但是，您*必须*在以下情况下，执行本指南中概述的步骤，将分配的原定设置域名手动添加到容器服务中：
+ 如果出现问题且您分配的原定设置域名不会自动添加到容器服务中。
+ 如果您在容器服务中使用了 Lightsail 发行版以外的发行版。

您只能使用 AWS Command Line Interface (AWS CLI) 将分配的默认域名手动添加到容器服务。有关容器服务的更多信息，请参阅[容器服务](amazon-lightsail-container-services.md)。有关分配的更多信息，请参阅[对象存储](buckets-in-amazon-lightsail.md)。

## 将分配的原定设置域添加到容器服务
<a name="adding-distribution-default-domain-to-container-service"></a>

完成以下过程，使用 AWS Command Line Interface ()AWS CLI将分配的默认域添加到 Lightsail 中的容器服务。使用 `update-container-service` 命令完成此操作。有关更多信息，请参阅《AWS CLI 命令参考》**中的 [update-container-service](https://docs.aws.amazon.com/cli/latest/reference/lightsail/update-container-service.html)。

**注意**  
在继续执行此过程之前，必须为 Lightsail 安装 AWS CLI 并对其进行配置。有关更多信息，请参阅[配置为与 Lightsail 配合使用](lightsail-how-to-set-up-and-configure-aws-cli.md)。 AWS CLI 

1. 打开命令提示符或终端窗口。

1. 输入以下命令之一以将分配的原定设置域添加到容器服务。
**注意**  
如果您将自定义域添加到容器服务中，则需要同时指定自定义域和分配的原定设置域。

   **容器服务上没有配置自定义域：**

   ```
   aws lightsail update-container-service --service-name ContainerServiceName --public-domain-names '{"_": ["DistributionDefaultDomain"]}'
   ```

   **容器服务上没有配置一个或多个自定义域：**

   ```
   aws lightsail update-container-service --service-name ContainerServiceName --public-domain-names '{"CertificateName": ["ExistingCustomDomain"],"_": ["DistributionDefaultDomain"]}'
   ```

   在该命令中，将以下示例文本替换为自己的文本：
   + *ContainerServiceName*-指定为发行版来源的 Lightsail 容器服务的名称。
   + *DistributionDefaultDomain*-使用容器服务作为来源的分配的默认域。例如 `example123.cloudfront.net`。
   + *CertificateName*“-当前附加到容器服务的自定义域名的 Lightsail 证书的名称（如果有）。如果没有附加到容器服务的自定义域，则使用标记为**容器服务上未配置自定义域**的命令。
   + *DistributionDefaultDomain*-当前附加到容器服务的自定义域。

   示例：
   + **容器服务上没有配置自定义域：**

     ```
     aws lightsail update-container-service --service-name ContainerServiceName --public-domain-names '{"_": ["example123.cloudfront.net"]}'
     ```
   + **容器服务上没有配置一个或多个自定义域：**

     ```
     aws lightsail update-container-service --service-name ContainerServiceName --public-domain-names '{"example-com": ["example.com"],"_": ["example123.cloudfront.net"]}'
     ```