资源:自定义域
CustomDomain
是将域名链接到 Firebase 托管网站的实体。将CustomDomain
添加到您的网站,以允许托管提供网站内容以响应针对您的域名的请求。
JSON 表示 |
---|
{ "name": string, "annotations": { string: string, ... }, "createTime": string, "updateTime": string, "deleteTime": string, "expireTime": string, "etag": string, "hostState": enum ( |
领域 | |
---|---|
name | 仅输出。 |
annotations | 您可以添加注释以留下有关 包含 |
createTime | 仅输出。自定义域的创建时间。 RFC3339 UTC“Zulu”格式的时间戳,具有纳秒分辨率和最多九个小数位。示例: |
updateTime | 仅输出。上次更新 RFC3339 UTC“Zulu”格式的时间戳,具有纳秒分辨率和最多九个小数位。示例: |
deleteTime | 仅输出。 RFC3339 UTC“Zulu”格式的时间戳,具有纳秒分辨率和最多九个小数位。示例: |
expireTime | 仅输出。软删除的 RFC3339 UTC“Zulu”格式的时间戳,具有纳秒分辨率和最多九个小数位。示例: |
etag | 仅输出。一个字符串,表示 |
hostState | 仅输出。此 |
ownershipState | 仅输出。此 |
requiredDnsUpdates | 仅输出。您应对域名的 DNS 记录进行一组更新,以便托管代表其提供安全内容。 |
issues[] | 仅输出。主机系统在尝试建立主机为您的域名提供安全内容的能力时遇到的一组错误。解决这些问题以确保您的 |
certPreference | 该字段可让您指定 Hosting 为您的域名创建哪种 SSL 证书类型。 Spark 计划自定义域只能访问 |
cert | 仅输出。托管拥有此自定义域的域名的 SSL 证书。对于新的自定义域,这通常代表托管创建证书的意图,而不是实际的证书。检查 |
redirectTarget | 此 |
reconciling | 仅输出。该字段如果为 true,则表明 Hosting 的系统正在尝试使自定义域的状态与您的首选状态相匹配。当在 |
labels | 用于额外元数据和/或过滤的标签。 包含 |
主机状态
您的域名的主机状态。主机状态是通过检查与您的域名关联的每个 IP 地址来确定它是否正在提供托管内容。
枚举 | |
---|---|
HOST_STATE_UNSPECIFIED | 您的自定义域的主机状态未指定。如果未指定,则该消息无效。 |
HOST_UNHOSTED | 您的自定义域的域名未与任何 IP 地址关联。 |
HOST_UNREACHABLE | 无法访问您的自定义域的域名。托管服务的 DNS 查询查找您域名的 IP 地址时出现错误。有关更多详细信息,请参阅CustomDomain 对象的issues 字段。 |
HOST_MISMATCH | 您的自定义域的域名的 IP 地址最终不会解析为托管。 |
HOST_CONFLICT | 您的自定义域的域名具有解析为托管和其他服务的 IP 地址。为了确保结果一致,请删除与非托管服务相关的A 和AAAA 记录。 |
HOST_ACTIVE | 针对您的自定义域的域名的所有请求均由托管提供服务。如果自定义域的OwnershipState 也为ACTIVE ,则托管会在域名上提供您的托管网站的内容。 |
所有权状态
您的域的所有权状态。一个域最多可由一个 Firebase 托管站点拥有。所有权可以通过两种方式确定:
* TXT records: A TXT record on the domain in the form
`hosting-site=[siteId]`.
* CNAME records: A CNAME record that points to a Hosting site's default
domain.
如果您的CustomDomain
处于OWNERSHIP_ACTIVE
以外的OwnershipState
超过 30 天,并且至少 30 天内没有更新,Hosting 的所有权系统会删除CustomDomain
。要恢复已删除的CustomDomain
,请发出customDomains.undelete
请求。
枚举 | |
---|---|
OWNERSHIP_STATE_UNSPECIFIED | 您的自定义域的所有权状态未指定。这绝对不应该发生。 |
OWNERSHIP_MISSING | 您的自定义域名的域名没有与托管相关的所有权记录;没有 Firebase 项目有权代表域名行事。 |
OWNERSHIP_UNREACHABLE | 无法访问您的自定义域的域名。托管服务查找您的域名所有权记录的 DNS 查询出现错误。有关更多详细信息,请参阅CustomDomain 对象的issues 字段。 |
OWNERSHIP_MISMATCH | 您的自定义域的域名归另一个 Firebase 项目所有。删除冲突的TXT 记录并将其替换为当前 Firebase 项目的项目特定记录。 |
OWNERSHIP_CONFLICT | 您的自定义域的域名存在冲突的TXT 记录,这些记录表明您当前的 Firebase 项目和另一个项目的所有权。删除其他项目的所有权记录以授予当前项目所有权。 |
OWNERSHIP_PENDING | 您的自定义域的 DNS 记录配置正确。托管将在 24 小时内将您的域所有权转移到此CustomDomain 。 |
OWNERSHIP_ACTIVE | 您的自定义域的域名具有TXT 记录,这些记录授予其项目代表其执行操作的权限。 |
DNS更新
您应该进行一组 DNS 记录更新,以允许托管服务提供安全内容以响应针对您域名的请求。这些更新显示 Hosting 上次查询域名 DNS 记录时的当前状态,以及 Hosting 在您的自定义域完全激活之前需要查看的所需记录集。
JSON 表示 |
---|
{ "discovered": [ { object ( |
领域 | |
---|---|
discovered[] | Hosting 在检查域时发现的 DNS 记录集。 |
desired[] | 托管需要在域上提供安全内容的 DNS 记录集。 |
checkTime | 托管上次检查您的自定义域的 DNS 记录。 RFC3339 UTC“Zulu”格式的时间戳,具有纳秒分辨率和最多九个小数位。示例: |
DNS记录集
与 Firebase 托管中自定义域的设置和维护相关的一组 DNS 记录。
JSON 表示 |
---|
{ "domainName": string, "checkError": { object ( |
领域 | |
---|---|
domainName | 仅输出。记录集所属的域名。 |
checkError | 仅输出。查询域名的 DNS 记录时托管服务遇到错误。注意:托管会忽略 |
records[] | 仅输出。域上的记录。 |
DNS记录
DNS 记录是定义系统和服务在处理域名请求时应如何表现的资源记录。例如,当您将A
记录添加到域名的 DNS 记录时,您就是在通知其他系统(例如您用户的 Web 浏览器)联系这些 IPv4 地址以检索与您的域名相关的资源(例如您的托管站点文件) )。
JSON 表示 |
---|
{ "domainName": string, "type": enum ( |
领域 | |
---|---|
domainName | 仅输出。记录所属的域名,例如 |
type | 仅输出。记录的类型,决定记录包含哪些数据。 |
rdata | 仅输出。记录的数据。该值的含义取决于记录类型: - A 和 AAAA:域名的 IP 地址。 - CNAME:另一个用于检查记录的域。 - TXT:与域名关联的任意文本字符串。托管使用 TXT 记录来确定哪些 Firebase 项目有权代表域名执行操作。 - CAA:记录的标志、标签和值,例如 |
requiredAction | 仅输出。一个枚举,指示此记录所需的操作。 |
类型
DNS 记录的类型,包括A
、 TXT
、 AAAA
和CAA
。
枚举 | |
---|---|
TYPE_UNSPECIFIED | 记录的类型未指定。如果未指定,则该消息无效。 |
A | A 记录,如RFC 1035中定义。 A 记录确定域名将流量定向到哪些 IPv4 地址。 |
CNAME | CNAME 记录,如RFC 1035中定义。 CNAME 或规范名称记录将域名映射到不同的规范域名。如果存在CNAME 记录,则它应该是域名上的唯一记录。 |
TXT | TXT 记录,如RFC 1035中定义。 TXT 记录保存域名上的任意文本数据。托管使用TXT 记录来确定哪个 Firebase 项目有权对域名执行操作。 |
AAAA | RFC 3596 AAAA 记录中定义的 AAAA 记录确定域名将流量定向到哪些 IPv6 地址。 |
CAA | CAA 记录,如RFC 6844中定义。 CAA(即证书颁发机构授权)记录确定哪些证书颁发机构(SSL 证书铸造组织)有权为域名铸造证书。 Firebase Hosting 使用 CAA 记录级联。 CAA 记录是可选的。如果域名及其父域名没有 CAA 记录,则所有 CA 都有权代表其创建证书。一般来说,托管仅在需要修改 CAA 记录以解锁 SSL 证书创建时才会要求您修改 CAA 记录。 |
行动
操作是您应该对此 DNS 记录执行的一种操作,以配置您的域以与 Firebase 托管一起使用。
枚举 | |
---|---|
NONE | 无需采取任何行动。 |
ADD | 将此记录添加到您的 DNS 记录中。 |
REMOVE | 从您的 DNS 记录中删除此记录。 |
类型
证书的类型。确定托管系统如何处理创建和维护证书。
枚举 | |
---|---|
TYPE_UNSPECIFIED | 证书的类型未指定。如果未指定,则该消息无效。 |
TEMPORARY | 一种短期证书类型,暂时覆盖域名,而托管则创建更永久的证书。 |
GROUPED | Spark 计划自定义域的标准证书。 |
PROJECT_GROUPED | 仅 Blaze 计划。涵盖同一 Firebase 项目中 1 到 100 个具有自定义域的域名的证书。 |
DEDICATED | 仅 Blaze 计划。涵盖单个域名的证书。 |
证书
SSL 证书,用于为针对您的域名的请求提供端到端加密。 Certificate
可以是实际的 SSL 证书,对于新创建的自定义域,也可以是托管意图创建的证书。
JSON 表示 |
---|
{ "type": enum ( |
领域 | |
---|---|
type | 仅输出。证书的类型。 |
state | 仅输出。证书的状态。只有 |
verification | 仅输出。您可以将一组 ACME 挑战添加到您的 DNS 记录或现有的非 Hosting 托管提供商中,以允许 Hosting 在您将流量指向托管之前为您的域名创建 SSL 证书。您可以利用这些挑战作为从旧提供商到托管的零停机过渡的一部分。 |
issues[] | 仅输出。 Hosting 在尝试为您的域名创建证书时遇到的一组错误。解决这些问题以确保托管能够为您网站的访问者提供安全的通信。 |
createTime | 仅输出。证书的创建时间。对于 RFC3339 UTC“Zulu”格式的时间戳,具有纳秒分辨率和最多九个小数位。示例: |
expireTime | 仅输出。证书的过期时间。此后,该证书将无法再用于在托管和您网站的访问者之间提供安全通信。 RFC3339 UTC“Zulu”格式的时间戳,具有纳秒分辨率和最多九个小数位。示例: |
证书状态
您的域名的 SSL 证书的状态。这可以代表实际证书的状态,或者对于新的自定义域,主机尝试创建证书。
枚举 | |
---|---|
CERT_STATE_UNSPECIFIED | 证书的状态未指定。如果未指定,则该消息无效。 |
CERT_PREPARING | 每个证书的初始状态代表主机在向证书颁发机构发出请求之前创建证书的意图。 |
CERT_VALIDATING | 托管正在验证域名的 DNS 记录是否处于允许代表其创建证书的状态。 |
CERT_PROPAGATING | 该证书是最近创建的,需要时间在托管的 CDN 中传播。 |
CERT_ACTIVE | 该证书处于活动状态,为其代表的域名提供安全连接。 |
CERT_EXPIRING_SOON | 证书即将过期,其上的所有域名都将获得新证书。 |
CERT_EXPIRED | 证书已过期。托管无法再在您的域名上提供安全内容。 |
证书验证
您可以使用一组 ACME 质询来允许托管在将流量引导至托管服务器之前为您的域名创建 SSL 证书。使用 DNS 或 HTTP 质询;没有必要两者都提供。
JSON 表示 |
---|
{ "dns": { object ( |
领域 | |
---|---|
dns | 仅输出。添加到您的 DNS 记录的 |
http | 仅输出。添加到您现有的非 Hosting 托管服务的文件,用于确认您让 Hosting 为您的域名创建 SSL 证书的意图。 |
Http更新
您可以添加到现有的非 Hosting 托管服务中的文件,该文件确认您允许 Hosting 的证书颁发机构为您的域创建 SSL 证书的意图。
JSON 表示 |
---|
{
"path": string,
"desired": string,
"discovered": string,
"lastCheckTime": string,
"checkError": {
object ( |
领域 | |
---|---|
path | 仅输出。文件的路径。 |
desired | 仅输出。在路径中提供的文本字符串。 |
discovered | 仅输出。 Hosting 在上次检查期间是否能够在指定路径上找到所需的文件内容。 |
lastCheckTime | 仅输出。托管系统上次检查文件内容的时间。 RFC3339 UTC“Zulu”格式的时间戳,具有纳秒分辨率和最多九个小数位。示例: |
checkError | 仅输出。上次内容检查期间遇到错误。如果为 null,则检查成功完成。 |
方法 | |
---|---|
| 创建一个CustomDomain 。 |
| 删除指定的CustomDomain 。 |
| 获取指定的CustomDomain 。 |
| 列出与指定父托管站点关联的每个CustomDomain 。 |
| 更新指定的CustomDomain 。 |
| 如果指定的CustomDomain 已被软删除,则取消删除它。 |