对于
部署在 Firebase App Hosting 上的应用,您不必放弃能够凸显品牌的独有域名。您可以不将 Firebase 生成的网域用于
您的 Firebase 托管的网站,而是使用自定义网域(如
example.com或 app.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 记录有两个原因:
|
是 |
| TXT | 借助这些记录,您可以将任意元数据附加到您的网域。App Hosting 允许您使用特定格式的 TXT 记录 fah-claim=[UUID],以指明应在您的网域中提供哪个自定义网域。 |
否 |
| CAA | 这些记录充当许可名单,用于指定有权为您的网域创建 SSL 证书的证书授权机构。App Hosting 只有在无法为您的网域创建证书时,才会请求 CAA 记录。 | 否 |
准备工作:您的自定义域名
添加或修改 DNS 记录时,不同的域名提供商要求您在其 DNS 管理网站中的主机 (或主机名 )字段输入的信息不同。 App Hosting 自定义网域向导要求您在 名称 字段中输入相同的值 。
我们在下方汇总了常见提供商通常会要求您输入的内容。如需了解详情,请参阅 域名提供商的文档。
| 网域类型 | 自定义域名 |
|---|---|
| 顶端网域 |
常见输入包括:
|
| 子网域 | 常见输入包括:
|
常见的域名提供商
以下是一些常见的域名提供商以及每个提供商可能要求的输入类型。 此部分信息会尽可能及时更新,但详细说明请以 域名提供商的文档为准。
迁移网域
如果您想将网域从其他提供商转移到 App Hosting 且不希望出现任何停机时间,可以使用 迁移网域 流程,该流程位于 Firebase 控制台中。该流程会引导您完成一个两步流程,该流程会先让 App Hosting准备好在您的网域上提供内容,然后再将 流量定向到App Hosting服务器。
第 1 步:添加自定义网域
- 在 Firebase 控制台中,依次前往 Hosting 和无服务器 > App Hosting。
- 使用查看信息中心 选项选择 App Hosting 后端。
- 选择设置 标签页,然后点击添加自定义网域 。
- 输入您希望与您的 App Hosting 网站关联的自定义域名。
- (可选)选中相应的复选框,将针对该自定义网域的所有请求重定向到
另一个指定网域(以便让
example.com和www.example.com重定向到相同的内容)。 - 点击继续设置 ,以配置您的 DNS 记录并完成自定义网域设置。
第 2 步:准备网域
- 选择设置网域 向导的迁移网域 标签页。
- 按照第一步准备网域中的说明操作,其中
包括App Hosting提供您首选后端并为您的网域建立安全 TLS 连接所需的一系列更改。输入以下信息,以在您的 DNS 提供商中添加、移除和保存来自您网域的记录:
- 名称:为记录输入您的自定义域名 。您指定的主机是要在其中提供内容的网域;此网域可以是顶端网域,也可以是子网域。此术语在您的域名提供商处可能显示为“主机名”“名称”或“网域”
- 记录类型:添加提供的 DNS 记录。
- 值:将提供的值分配给您的记录。此术语在您的域名提供商处可能显示为“数据”“指向”“内容”“地址”或“IP 地址”。值字段的内容因记录类型而异;例如,TXT 记录是字符串。
- 选择验证记录 。 App Hosting 将尝试检测您在域名提供商处所做的 更改。更改最多可能需要 24 小时才能生效。您可以在后端信息中心的设置 > 网域视图中查看状态 。
第 3 步:将流量定向到 App Hosting
- App Hosting 验证上一步中的记录更新后,
向导会进入最后一步将流量定向到 App Hosting 。此
步骤会显示您必须进行的记录更新,以便将网域的
流量定向到 App Hosting 服务器。与之前一样,输入以下信息,以在您的 DNS 提供商中添加、移除和保存来自您网域的记录:
- 名称:为记录输入您的自定义域名 。您指定的主机是要在其中提供内容的网域;此网域可以是顶端网域,也可以是子网域。此术语在您的域名提供商处可能显示为“主机名”“名称”或“网域”
- 记录类型:添加提供的 DNS 记录。
- 值:将提供的值分配给您的记录。此术语在您的域名提供商处可能显示为“数据”“指向”“内容”“地址”或“IP 地址”。值字段的内容因记录类型而异;例如,TXT 记录是字符串。
- 选择验证记录 。 App Hosting 将尝试检测您在域名提供商处所做的 更改。更改最多可能需要 24 小时才能生效。您可以在后端信息中心的设置 > 网域视图中查看状态 。
关联新网域
如果您不介意停机(例如,当您关联的网域是您的 Web 应用的新网域时),请按照本部分中的说明操作。
第 1 步:添加自定义网域
- 在 Firebase 控制台中,依次前往 Hosting 和无服务器 > App Hosting。
- 使用查看信息中心 选项选择 App Hosting 后端。
- 选择设置 标签页,然后点击添加自定义网域 。
- 输入您希望与您的 App Hosting 网站关联的自定义域名。
- (可选)选中相应的复选框,将针对该自定义网域的所有请求重定向到
另一个指定网域(以便让
example.com和www.example.com重定向到相同的内容)。 - 点击继续设置 ,以配置您的 DNS 记录并完成自定义网域设置。
第 2 步:验证 DNS 记录
- Firebase 控制台的 设置网域 向导将显示必要的记录,这些记录需要更新才能将您的页面指向 Firebase App Hosting。输入以下信息,以在您的 DNS 提供商中添加、移除和保存来自您网域的记录:
- 名称:为记录输入您的自定义域名 。您指定的主机是要在其中提供内容的网域;此网域可以是顶端网域,也可以是子网域。此术语在您的域名提供商处可能显示为“主机名”“名称”或“网域”
- 记录类型:添加提供的 DNS 记录。
- 值:将提供的值分配给您的记录。此术语在您的域名提供商处可能显示为“数据”“指向”“内容”“地址”或“IP 地址”。值字段的内容因记录类型而异;例如,TXT 记录是字符串。
- 选择验证记录 。 App Hosting 将尝试检测您在域名提供商处所做的 更改。更改最多可能需要 24 小时才能生效。您可以在后端信息中心的设置 > 网域视图中查看状态 。
等待预配 SSL 证书
App Hosting 最多可能需要几个小时才能为 您的网域预配 SSL 证书,具体取决于您更新 DNS 记录的时间。在某些情况下,将 DNS 指向 Firebase App Hosting 后,可能需要长达 24 小时。
您可以使用浏览器的安全工具查看此证书。在网域预配过程中,您可能会看到无效证书,或者在连接到网域时遇到问题。这是此流程的正常环节,在您的网域证书有效后便会恢复正常。
注意:Firebase App Hosting 会根据 需要自动为自定义网域重新预配 SSL 证书。
自定义网域的状态说明
| 状态 | 说明 |
|---|---|
| 需要设置 |
您可能需要更改 DNS 记录的某个配置。
|
| 待处理 | 您正确设置了自定义域名,但 Firebase App Hosting 未配置 SSL 证书。 有时,限制过多的 CAA 记录 可能会阻碍系统为自定义网域创建 SSL 证书。确保允许证书授权机构 “letsencrypt.org”和“pki.goog”以便为您的网域创建 SSL 证书。 |
| 正在创建证书 | 正在为您的网域生成 SSL 证书。 |
| 已连接 | 您的自定义网域具有正确的 DNS 记录和 SSL 证书。 |