Catch up on everthing we announced at this year's Firebase Summit. Learn more

連接自定義域

使用 Firebase 託管,您不必放棄以品牌為中心的獨特域名。您可以使用自定義的域(如example.comapp.example.com ),而不是為你的火力地堡託管網站火力地堡生成域。

Firebase 託管為您的每個域配置 SSL 證書,並通過全球 CDN 提供您的內容。

本文檔的其餘部分將引導您完成這些步驟以連接您的自定義域。

為託管設置您的域

請確保你已經完成了從項目的“開始使用”嚮導火力地堡託管頁面,讓你在你的火力地堡項目火力地堡託管網站。

第1步:添加域

  1. 從項目的託管頁面,進入嚮導用於連接自定義域:

    • 如果你只有一個託管網站,點擊Connect域
    • 如果你有一個以上的託管網站,點擊信息查看所需的網站,然後點擊Connect域
  2. 輸入您想要連接到您的託管站點的自定義域名。

  3. (可選)檢查框上的自定義域的所有請求重定向到第二個指定的域(這樣example.comwww.example.com重定向到相同的內容)。

  4. 單擊繼續以啟動驗證過程。

第2步:驗證域名的所有權

如果連接域設置嚮導的要求,驗證您的先端域。

這些步驟可確保您的域尚未與 Firebase 項目相關聯,並且您擁有指定的域。

  1. 在您的域提供商的站點中,找到 DNS 管理頁面。

  2. 添加並保存具有以下輸入的新記錄:

    • 類型:添加TXT記錄。

      Firebase 託管要求您在 DNS 設置中持續保留此 TXT 記錄,以證明您對域的所有權並授權 Firebase 為您的站點分配和續訂 SSL 證書。

      您的域提供商可能會將此術語列為“記錄類型”。

    • 主持人:請輸入您的頂點域密鑰

      證明您對頂級域或根域的所有權,證明您對其所有子域的所有權。

      您的域提供商可能會將此術語列為“主機名”、“名稱”或“域”。

    • 價值:獨特的驗證值複製到該領域。

      Firebase 託管會檢查此值以證明您的域所有權。

      您的域提供商可能會將此術語列為“數據”。

  3. 允許長達24小時的更新後的TXT記錄傳播,然後單擊驗證

    請注意,您可以點擊取消以安全地關閉連接域窗口,並在稍後的時間重新打開。這不會影響的傳播時間,但你會被提示重新輸入您的域名,當你重新打開該窗口。

    經過充分的傳播時間,點擊該連接域窗口驗證的火力地堡控制台允許你開始SSL證書供應過程。

    在大多數情況下,您的記錄的傳播和域的驗證將在幾個小時內發生,具體取決於您的域提供商。有關添加 TXT 記錄和傳播時間的詳細說明,請參閱域提供商的文檔。

    如果點擊確認提示的錯誤信息,您的記錄尚未傳播或者您的值可能不正確。

第3步:進入直播

在火力地堡控制台連接域窗口中,選擇一個新的站點或高級設置快速設置,如果你已經有一個網站上的其他託管服務提供商運行,需要一個零宕機遷移。

等待 SSL 證書配置

在我們驗證域所有權後,我們會為您的域提供 SSL 證書,並在您將 DNS A 記錄指向 Firebase 託管後的 24 小時內將其部署到我們的全球 CDN。

您的域將被列為 FirebaseApp SSL 證書中的主題備用名稱 (SAN) 之一。您可以使用瀏覽器的安全工具查看此證書。在配置域時,您可能會看到不包含您的域名的無效證書。這是該過程的正常部分,將在您的域證書可用後解決。

對於高級設置的用戶,您的網站將通過您以前的託管服務提供商,直到被託管設置狀態在項目的火力地堡主機頁面更新相連

您的自定義域密鑰

添加或編輯DNS記錄時,不同的域名提供商希望你到他們的DNS管理網站中輸入Host字段不同的輸入。我們在下面彙編了來自流行供應商的常見輸入。有關詳細說明,請參閱您的域提供商的文檔。

域類型自定義域密鑰
頂級域名

常見的輸入包括:

  • @
  • 頂點域名(例如, example .com
  • 離開主機領域的空白
子域

常見的輸入包括:

  • 完整的子域名(例如, app. example .com
  • 只有子域部分(例如, app只,並留出. example .com
  • 只有www為的子域名www. example .com

常見域名提供商

以下是一些常見的域提供程序以及每個可能需要的輸入類型。此信息會盡可能保持最新,但請參閱您的域提供商的文檔以獲取詳細說明。

自定義域的設置狀態描述

地位描述
需要設置

您可能需要更改 DNS 記錄的配置。

  • 在大多數情況下,您的 DNS A 記錄尚未從您的域名提供商傳播到 Firebase 託管服務器。
    故障排除提示:如果已超過 24 小時,請檢查您是否已將記錄指向 Firebase 託管。

  • 在極少數情況下,尤其是在您使用高級設置流程時,SSL 質詢可能會失敗,因為:

    • 您的 DNS 記錄具有指向其他託管服務提供商的 A 記錄或 CNAME 記錄。
      故障排除提示:檢查您的 A 記錄是否僅指向 Firebase 託管,並刪除所有 CNAME 記錄。
    • 遷移失敗,令牌(DNS TXT 記錄或提供給您網站的上傳文件)現在無效。
      故障排除提示:點擊查看域,然後提供新的令牌到你現有的域名。
待辦的

您正確設置了自定義域,但 Firebase 託管尚未配置 SSL 證書。

有時,以下問題可能會阻止為自定義域生成 SSL 證書:

  • 您的 CAA 記錄過於嚴格。
    故障排除提示:確保允許證書頒發機構 `letsencrypt.org` 和 `pki.goog` 為您的域創建 SSL 證書。
  • 您的挑戰代碼無效。
    如果您正在使用高級設置流程並且遷移失敗,則您的令牌(及其質詢代碼)現在無效。
    故障排除提示:點擊查看域,然後提供新的令牌到你現有的域名。
  • 您為太多子域請求了證書。
    故障排除提示:通常,由於 SSL 證書生成限制,Firebase Hosting 建議在一個頂級自定義域上使用不超過 20 個子域。
連接的

您的自定義域具有正確的 DNS 記錄並具有 SSL 證書。
您可以提供您網站的內容。

需要重新驗證

如果發生以下任何一種情況,Firebase 可能會要求您手動重新驗證域所有權:

  • 添加TXT記錄時您最初驗證您的域名所有權被更改或從域的DNS設置中刪除。
    • 請注意,單個域上允許有多個帶有 google-site-verification 令牌的 TXT 記錄。
    • 我們要求 TXT 記錄持續存在於您的 DNS 設置中,因為這證明您擁有該域並授權我們為您的站點分配和續訂 SSL 證書。
  • 誰驗證域名所有權的人不再分配的IAM角色包含所需的權限驗證域名所有權。這些角色包括所有者、編輯者、Firebase 管理員和 Firebase 開發管理員。
故障排除提示:訪問項目的託管頁面完成指定的時間窗口(一般為30天)內重新驗證過程,以避免被自動從火力地堡主機斷開連接您的自定義域。