Google is committed to advancing racial equity for Black communities. See how.
本頁面由 Cloud Translation API 翻譯而成。
Switch to English

連接自定義域

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

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

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

設置您的域名託管

確保您已經完成了項目的Firebase託管頁面中的“入門”嚮導,以便在Firebase項目中擁有一個Firebase託管站點。

步驟1 :添加域

  1. 在項目的“託管”頁面上,輸入用於連接自定義域的嚮導:

    • 如果只有一個託管站點,請單擊“連接域”
    • 如果您有多個託管站點,請單擊所需站點的查看,然後單擊連接域
  2. 輸入您想要連接到託管站點的自定義域名。

  3. (可選)選中該框以將自定義域上的所有請求重定向到另一個指定的域(例如example.comwww.example.com重定向到相同的內容)。

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

第2步:驗證域所有權

如果在“連接域”設置嚮導中要求,請驗證您的頂點域。

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

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

  2. 使用以下輸入來添加和保存新記錄:

    • 類型:添加TXT記錄。

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

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

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

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

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

    • :將唯一驗證值複製到字段中。

      Firebase Hosting檢查此值以證明您的域所有權。

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

  3. 最多允許24小時傳播更新的TXT記錄,然後點擊驗證

    請注意,您可以單擊“取消”以安全關閉“連接域”窗口並在以後重新打開。這不會影響傳播時間,但是當您重新打開窗口時,系統會提示您重新輸入域名

    經過足夠的傳播時間後,在Firebase控制台的“連接域”窗口中單擊“驗證” ,即可開始SSL證書置備過程。

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

    如果單擊驗證提示錯誤消息,則您的記錄沒有傳播,或者您的值可能不正確。

步驟3 :上線

在Firebase控制台的“連接域”窗口中,為新站點選擇“快速設置” ,或者,如果您已經在其他託管服務提供商上運行了某個站點且需要零停機時間遷移,則選擇“高級設置”

等待SSL證書配置

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

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

對於高級設置用戶,您的網站將由以前的託管服務提供商託管,直到項目的Firebase託管頁面中設置狀態更新為Connected為止。

您的自定義域密鑰

添加或編輯DNS記錄時,不同的域提供商希望您在其DNS管理站點中為“主機”字段輸入不同的輸入。我們匯總了以下熱門提供商的常見意見。有關詳細說明,請參閱您的域提供商的文檔。

域類型自定義域密鑰
Apex網域

常見的輸入包括:

  • @
  • 頂點域名(例如example .com
  • 主機字段留空
子域名

常見的輸入包括:

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

普通域名提供商

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

自定義域的設置狀態說明

狀態描述
需要設置

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

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

  • 在極少數情況下,尤其是在使用“高級設置”流程時,SSL挑戰可能會失敗,原因是:

    • 您的DNS記錄具有指向其他託管服務提供商的A記錄或CNAME記錄。
      疑難解答提示:檢查您的A記錄僅指向Firebase Hosting,並刪除所有CNAME記錄。
    • 遷移失敗,並且令牌(DNS TXT記錄或提供給您的站點的上載文件)現在無效。
      疑難解答提示:單擊查看該域,然後將新令牌提供給您現有的域。
待辦的

您已正確設置自定義域,但是Firebase Hosting尚未配置SSL證書。

有時,以下問題可能會使自定義域的SSL證書無法正常運行:

  • 您的CAA記錄過於嚴格。
    故障排除技巧:確保允許證書頒發機構“ letsencrypt.org”和“ pki.goog”為您的域創建SSL證書。
  • 您的質詢代碼無效。
    如果您使用的是“高級設置”流程,並且遷移失敗,則您的令牌(及其質詢代碼)現在無效。
    疑難解答提示:單擊查看該域,然後將新令牌提供給您現有的域。
  • 您請求了太多子域的證書。
    疑難解答提示:由於SSL證書生成限制,通常,Firebase主機建議在一個apex自定義域中建議不超過20個子域。
連接的

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

需要重新驗證

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

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