# 设置自定义域名

{% hint style="warning" %}
此页面演示如何配置自定义域名和子域名。如果您想配置自定义子目录（例如 `example.com/docs`），请参见 [setting-a-custom-subdirectory](https://gitbook.com/docs/documentation/zh/publishing-documentation/setting-a-custom-subdirectory "mention") 页面。
{% endhint %}

默认情况下，您的站点可通过 `[subdomain].gitbook.io` 域名访问。&#x20;

您可以通过设置自定义域名来自定义此项，这意味着您的受众可以在您选择的域名上访问文档。

{% stepper %}
{% step %}

### 选择子域名

在选择子域名时，您可以使用 `www` 或自定义子域名。常用的一些子域名包括：

* `docs.example.com`
* `help.example.com`
* `developers.example.com`
  {% endstep %}

{% step %}

### 启动自定义域名设置

导航到您想为其设置自定义域名的站点。点击 **设置，** 然后选择 **设置自定义域名。**

在此处，您将看到一个窗口，可以在其中输入第一步中选择的自定义域名。输入后点击 **下一步。**
{% endstep %}

{% step %}

### 配置 DNS

在此阶段，您会看到一个包含三个字段的窗口： **类型、名称、目标。**

这些是您在 DNS 提供商处设置自定义域名时需要使用的详细信息。这是在 *GitBook 之外* 进行的，即在您用于域名的提供商处。

复制 **名称** 和 **目标** 字段的内容以便在您的 DNS 提供商处使用。每个提供商有所不同，所以有疑问时，请直接向他们咨询如何添加此记录。您应该能够在提供商的列表中选择记录的 **类型** 类型。

添加记录后，变更可能需要一些时间才能传播。我们建议 **等待至少 1 小时** 再进行下一步。准备好后点击 **下一步** 。
{% endstep %}

{% step %}

### 完成设置

在添加记录并完成传播后，就可以上线了！GitBook 将验证域名和您添加的记录，并会自动为您的域名配置 SSL 证书。

完成后，您会收到通知并可以点击 **完成**。如果需要，您也可以关闭窗口，我们在完成处理后会向您发送通知。
{% endstep %}
{% endstepper %}

### 故障排除

设置自定义域名有时会遇到障碍。下面我们列出在此过程中常见的问题并为每个问题提供详细的解决方案。

<details>

<summary>SSL 错误：在配置您的 SSL 证书时发生错误。</summary>

当为您的组织、集合或空间设置自定义域名时，我们会在我们这端为其设置 SSL 证书，以便您的文档能够通过 HTTPS 安全加载。\
\
当您设置自定义域名时，这个过程会自动发生——您无需购买或配置 SSL 证书。

有时在此阶段会发生错误，通常是因为自定义域名的 CNAME 记录尚未传播。

在这些情况下，我们建议如下：

1. 检查您的 CNAME 记录是否设置正确。\
   请查看我们关于配置 DNS 的页面以获取帮助。\
   如果 CNAME 记录不正确，我们将无法配置 SSL 证书并完成自定义域名设置。&#x20;
2. 等待 ***至少一小时*** 在配置 CNAME 记录和完成自定义域名设置之间。&#x20;
3. 验证 CNAME 是否已传播。您可以尝试使用第三方 DNS 查询工具，例如 [WhatsMyDNS](https://www.whatsmydns.net/)，以了解服务器对您正确的 CNAME 记录的解析结果。&#x20;
4. 如果您使用的是 Cloudflare，请确认您没有将该记录设置为代理 [，如此处所述](https://developers.cloudflare.com/fundamentals/setup/manage-domains/pause-cloudflare/#disable-proxy-on-dns-records).

</details>

<details>

<summary>域名已被连接错误：您的子域名已为不同内容配置。</summary>

分配给站点的自定义域名必须是唯一的。在多个位置使用相同的自定义域名会导致错误。

如果发生这种情况，您可以点击错误消息中的链接以查看该自定义域名已连接到的内容。这可能有助于您决定下一步该怎么做。

也有可能您无法访问该内容——如果是这种情况，请联系支持团队，他们可以帮助您下一步的操作。

不过，此错误的解决方案始终为以下两种之一：

1. 选择不同的自定义域名；或
2. 将自定义域名与其已连接的内容断开，然后将其重新连接到新的内容。

</details>
