关联自定义网域

对于 部署在 Firebase App Hosting 上的应用,您不必放弃能够凸显品牌的独有域名。您可以不将 Firebase 生成的网域用于 您的 Firebase 托管的网站,而是使用自定义网域(如 example.comapp.example.com)。Firebase App Hosting 会为您的各个网域配置 SSL 证书。

本文档的其余部分将逐步介绍如何通过以下方式关联自定义网域:

为确保服务不中断,您的 DNS 记录必须按特定顺序进行更新。请按照说明迁移网域,防止 应用停机。

如果您不介意停机(例如,当您关联的网域是您的 Web 应用的新网域时),请按照说明关联新 网域

准备工作:DNS 记录类型

App Hosting 设置网域 向导可能会要求您添加或移除 1 到 5 条 DNS 记录,具体取决于您网域的当前配置。记录的类型 决定了其功能。以下是 App Hosting 可能会要求的记录类型:

类型 说明 独占
A 这些记录包含 IPv4 值(例如 8.8.8.8),用于告知浏览器在尝试与您的网域联系时要使用的地址。
AAAA 这些记录包含 IPv6 值(例如 2001:4860:4860::8888),是一种不同类型的地址记录,其功能与 A 记录大致相同。App Hosting 目前不使用 AAAA 记录,但如果您的网域中存在任何 AAAA 记录,系统会要求您将其移除。
CNAME 这些记录包含一个单独的域名,该域名应取代您当前的域名来解析 DNS 查询。CNAME 记录仅允许在子网域(例如 www.example.com)中使用。App Hosting 使用 CNAME 记录有两个原因:
  • 轻松完成 onboarding:如果可能,App Hosting 会要求您将 CNAME 指向以 _custom-domain... 开头的预配置网域。
  • SSL 证书验证App Hosting 使用 Cloud Certificate Manager 为您的自定义网域预配 SSL 证书。_acme-challenge... 子网域上的 CNAME 记录允许 Certificate Manager 为您创建和续订证书。完成 onboarding 后,不得移除此记录,否则您的证书覆盖范围将会失效
TXT 借助这些记录,您可以将任意元数据附加到您的网域。App Hosting 允许您使用特定格式的 TXT 记录 fah-claim=[UUID],以指明应在您的网域中提供哪个自定义网域。
CAA 这些记录充当许可名单,用于指定有权为您的网域创建 SSL 证书的证书授权机构。App Hosting 只有在无法为您的网域创建证书时,才会请求 CAA 记录。

准备工作:您的自定义域名

添加或修改 DNS 记录时,不同的域名提供商要求您在其 DNS 管理网站中的主机 (或主机名 )字段输入的信息不同。 App Hosting 自定义网域向导要求您在 名称 字段中输入相同的值 。

我们在下方汇总了常见提供商通常会要求您输入的内容。如需了解详情,请参阅 域名提供商的文档

网域类型 自定义域名
顶端网域

常见输入包括:

  • @
  • 顶端域名(例如 example.com
  • 主机字段留空
子网域

常见输入包括:

  • 完整的子域名(例如 app.example.com
  • 仅限子网域部分(例如,app only, and leaving out .example.com)

常见的域名提供商

以下是一些常见的域名提供商以及每个提供商可能要求的输入类型。 此部分信息会尽可能及时更新,但详细说明请以 域名提供商的文档为准

迁移网域

如果您想将网域从其他提供商转移到 App Hosting 且不希望出现任何停机时间,可以使用 迁移网域 流程,该流程位于 Firebase 控制台中。该流程会引导您完成一个两步流程,该流程会先让 App Hosting准备好在您的网域上提供内容,然后再将 流量定向到App Hosting服务器。

第 1 步:添加自定义网域

  1. Firebase 控制台中,依次前往 Hosting 和无服务器 > App Hosting
  2. 使用查看信息中心 选项选择 App Hosting 后端。
  3. 选择设置 标签页,然后点击添加自定义网域
  4. 输入您希望与您的 App Hosting 网站关联的自定义域名。
  5. (可选)选中相应的复选框,将针对该自定义网域的所有请求重定向到 另一个指定网域(以便让 example.comwww.example.com 重定向到相同的内容)。
  6. 点击继续设置 ,以配置您的 DNS 记录并完成自定义网域设置。

第 2 步:准备网域

  1. 选择设置网域 向导的迁移网域 标签页。
  2. 按照第一步准备网域中的说明操作,其中 包括App Hosting提供您首选后端并为您的网域建立安全 TLS 连接所需的一系列更改。输入以下信息,以在您的 DNS 提供商中添加、移除和保存来自您网域的记录:
    • 名称:为记录输入您的自定义域名 。您指定的主机是要在其中提供内容的网域;此网域可以是顶端网域,也可以是子网域。此术语在您的域名提供商处可能显示为“主机名”“名称”或“网域”
    • 记录类型:添加提供的 DNS 记录。
    • :将提供的值分配给您的记录。此术语在您的域名提供商处可能显示为“数据”“指向”“内容”“地址”或“IP 地址”。值字段的内容因记录类型而异;例如,TXT 记录是字符串。
  3. 选择验证记录App Hosting 将尝试检测您在域名提供商处所做的 更改。更改最多可能需要 24 小时才能生效。您可以在后端信息中心的设置 > 网域视图中查看状态

第 3 步:将流量定向到 App Hosting

  1. App Hosting 验证上一步中的记录更新后, 向导会进入最后一步将流量定向到 App Hosting 。此 步骤会显示您必须进行的记录更新,以便将网域的 流量定向到 App Hosting 服务器。与之前一样,输入以下信息,以在您的 DNS 提供商中添加、移除和保存来自您网域的记录:
    • 名称:为记录输入您的自定义域名 。您指定的主机是要在其中提供内容的网域;此网域可以是顶端网域,也可以是子网域。此术语在您的域名提供商处可能显示为“主机名”“名称”或“网域”
    • 记录类型:添加提供的 DNS 记录。
    • :将提供的值分配给您的记录。此术语在您的域名提供商处可能显示为“数据”“指向”“内容”“地址”或“IP 地址”。值字段的内容因记录类型而异;例如,TXT 记录是字符串。
  2. 选择验证记录App Hosting 将尝试检测您在域名提供商处所做的 更改。更改最多可能需要 24 小时才能生效。您可以在后端信息中心的设置 > 网域视图中查看状态

关联新网域

如果您不介意停机(例如,当您关联的网域是您的 Web 应用的新网域时),请按照本部分中的说明操作。

第 1 步:添加自定义网域

  1. Firebase 控制台中,依次前往 Hosting 和无服务器 > App Hosting
  2. 使用查看信息中心 选项选择 App Hosting 后端。
  3. 选择设置 标签页,然后点击添加自定义网域
  4. 输入您希望与您的 App Hosting 网站关联的自定义域名。
  5. (可选)选中相应的复选框,将针对该自定义网域的所有请求重定向到 另一个指定网域(以便让 example.comwww.example.com 重定向到相同的内容)。
  6. 点击继续设置 ,以配置您的 DNS 记录并完成自定义网域设置。

第 2 步:验证 DNS 记录

  1. Firebase 控制台的 设置网域 向导将显示必要的记录,这些记录需要更新才能将您的页面指向 Firebase App Hosting。输入以下信息,以在您的 DNS 提供商中添加、移除和保存来自您网域的记录:
    • 名称:为记录输入您的自定义域名 。您指定的主机是要在其中提供内容的网域;此网域可以是顶端网域,也可以是子网域。此术语在您的域名提供商处可能显示为“主机名”“名称”或“网域”
    • 记录类型:添加提供的 DNS 记录。
    • :将提供的值分配给您的记录。此术语在您的域名提供商处可能显示为“数据”“指向”“内容”“地址”或“IP 地址”。值字段的内容因记录类型而异;例如,TXT 记录是字符串。
  2. 选择验证记录App Hosting 将尝试检测您在域名提供商处所做的 更改。更改最多可能需要 24 小时才能生效。您可以在后端信息中心的设置 > 网域视图中查看状态

等待预配 SSL 证书

App Hosting 最多可能需要几个小时才能为 您的网域预配 SSL 证书,具体取决于您更新 DNS 记录的时间。在某些情况下,将 DNS 指向 Firebase App Hosting 后,可能需要长达 24 小时。

您可以使用浏览器的安全工具查看此证书。在网域预配过程中,您可能会看到无效证书,或者在连接到网域时遇到问题。这是此流程的正常环节,在您的网域证书有效后便会恢复正常。

注意Firebase App Hosting 会根据 需要自动为自定义网域重新预配 SSL 证书。

自定义网域的状态说明

状态 说明
需要设置

您可能需要更改 DNS 记录的某个配置。

  • 大多数情况下,您的 DNS A 记录没有从域名提供商传播到 Firebase App Hosting 服务器。
    问题排查提示:如果已超过 24 小时,请检查您是否已将记录指向 Firebase App Hosting

  • 在极少数情况下,SSL 质询可能会失败,因为 您的 DNS 记录具有指向其他托管服务提供商的 A 记录或 CNAME 记录。
    问题排查提示:检查您的 A 记录是否仅指向 Firebase App Hosting,并移除所有 CNAME 记录。

待处理

您正确设置了自定义域名,但 Firebase App Hosting 未配置 SSL 证书。

有时,限制过多的 CAA 记录 可能会阻碍系统为自定义网域创建 SSL 证书。确保允许证书授权机构 “letsencrypt.org”和“pki.goog”以便为您的网域创建 SSL 证书。

正在创建证书

正在为您的网域生成 SSL 证书。

已连接

您的自定义网域具有正确的 DNS 记录和 SSL 证书。
您可以提供网站的内容。