連結自訂網域

透過 Firebase 託管,您不需要提供以品牌為中心的獨特網域名稱。您可以為 Firebase 託管網站使用自訂網域 (例如 example.comapp.example.com),而非 Firebase 產生的網域。

Firebase 託管會為每個網域佈建 SSL 憑證,並透過全球 CDN 提供內容。

本文件的其餘部分將逐步引導您執行這些步驟連結自訂網域。

設定自家網域以用於託管服務

請確認您已從專案的 Firebase 託管頁面完成「開始使用」精靈,使您的 Firebase 專案中有 Firebase 託管網站。

步驟 1:新增自訂網域

  1. 在專案的「Hosting」(託管) 頁面中,輸入連線至自訂網域的精靈:

    • 如果只有一個託管網站,請按一下「新增自訂網域」
    • 如果您擁有多個託管網站,請按一下所需網站的「View」(查看),然後按一下「Add custom domain」(新增自訂網域)
  2. 輸入要連線至代管網站的自訂網域名稱。

  3. (選用) 勾選方塊,將自訂網域上的所有要求重新導向至第二個指定網域 (例如 example.comwww.example.com 會重新導向至相同內容)。

  4. 按一下「Continue」(繼續) 即可設定 DNS 記錄,並完成自訂網域的設定程序。

步驟 2:設定自訂網域

如果「Connect Domain」(連結網域) 設定精靈中要求連線,請驗證 apex 網域。

這些步驟可確保您的網域尚未與 Firebase 專案建立連結,而且您擁有指定網域。

  1. 在網域供應商的網站上,找到 DNS 管理頁面。

  2. 請使用下列輸入內容新增及儲存新記錄:

    • Type (類型):新增 TXT 記錄。

      Firebase 託管要求您必須在 DNS 設定中持續顯示這個 TXT 記錄,藉此證明您擁有該網域,並授權 Firebase 指派及更新網站的安全資料傳輸層 (SSL) 憑證。

      您的網域供應商可能會將這個字詞列為「Record Type」。

    • Host:輸入您的 apex 網域金鑰

      證明您對 Apex 網域或根網域的擁有權,可證明您擁有網域所有子網域的擁有權。

      您的網域供應商可能會將這個字詞列為「主機名稱」、「名稱」或「網域」。

    • :將專屬驗證值複製到欄位中。

      Firebase 託管會檢查這個值,證明你的網域擁有權。

      您的網域供應商可能會將這個字詞列為「資料」。

  3. 更新的 TXT 記錄最多需要 24 小時才能生效,然後按一下「Verify」

    請注意,您可以按一下「Cancel」,安全地關閉「Connect Domain」視窗,稍後再重新開啟。這不會影響傳播時間,但在您重新開啟視窗時,系統會提示您重新輸入網域名稱

    長時間生效之後,請在 Firebase 控制台的「Connect Domain」視窗中按一下「Verify」,啟動 SSL 憑證佈建程序。

    在大多數情況下,您的記錄和網域驗證會在幾小時內完成,視網域供應商而定。如需新增 TXT 記錄和傳播時間的詳細操作說明,請參閱網域供應商的說明文件。

    如果按一下「Verify」時顯示錯誤訊息,則您的記錄尚未傳播,或是值可能不正確。

在 Firebase 控制台的「Add Custom Domain」精靈中,選取「Quick Setup」或「Advanced Setup」

快速設定可用於目前未接收流量,或是您嘗試從其他託管網站轉移的新網域。如果您已有其他主機供應商的網域接收要求,而且不需要停機,就可以使用「進階設定」

「Advanced Setup」精靈將協助您建立 SSL 憑證和擁有權聲明,讓「託管」在接收流量前能為網域提供流量。

等待 SSL 憑證佈建

驗證網域擁有權後,我們會為您的網域佈建 SSL 憑證,並在您將 DNS A 記錄指向 Firebase 託管後的 24 小時內,將其部署至我們的全球 CDN。

您的網域會在 FirebaseApp SSL 憑證中列為其中一個主體別名 (SAN)。您可以使用瀏覽器的安全性工具查看這個憑證。在網域佈建期間,您可能會看到不含網域名稱的無效憑證。這是正常流程的一部分,會在網域憑證可用後解析。

如果是進階設定使用者,您的網站會由先前的代管服務供應商代管,直到專案 Firebase 託管頁面設定狀態更新為「已連結」為止。

您的自訂網域金鑰

新增或編輯 DNS 記錄時,不同的網域供應商會預期您針對其 DNS 管理網站內的「Host」(主機) 欄位輸入不同的輸入內容。以下彙整了熱門供應商的常用輸入內容。 如需詳細操作說明,請參閱網域供應商的說明文件。

網域類型 自訂網域金鑰
Apex 網域

常見的輸入內容包括:

  • @
  • apex 網域名稱 (例如 example.com)
  • 將「Host」(主機) 欄位留白
子網域

常見的輸入內容包括:

  • 完整的子網域名稱,例如 app.example.com
  • 只有子網域部分 (例如,僅限 app,且無法排除 .example.com)
  • 只有 www 適用於 www.example.com 的子網域

常見的網域供應商

以下列出一些常見的網域供應商,以及各供應商可能需要的輸入類型。 這項資訊會盡可能保持在最新狀態。如需詳細操作說明,請參閱網域供應商的說明文件。

自訂網域的設定狀態說明

狀態 說明
需要設定

你可能需要使用 DNS 記錄變更設定。

  • 在大多數情況下,您的 DNS A 記錄尚未從網域名稱供應商傳播至 Firebase 託管伺服器。
    疑難排解提示:如果時間超過 24 小時,請確認已將記錄指向 Firebase 託管。

  • 在極少數情況下,尤其是在採用進階設定流程時,安全資料傳輸層 (SSL) 驗證可能會失敗,原因如下:

    • SSL 憑證驗證失敗,而且憑證 (DNS TXT 記錄或已上傳至網站的檔案) 現在無效。
      疑難排解提示:按一下網域的「查看」,然後將新的權杖提供給現有網域。
待核准

您的自訂網域設定正確無誤,但 Firebase 託管尚未佈建 SSL 憑證。

下列問題有時可能導致自訂網域的 SSL 憑證擷取失敗:

  • 您的 CAA 記錄限制過多。
    疑難排解提示:請確認憑證授權單位「letsEncrypt.org」和「pki.goog」可以為您的網域建立 SSL 憑證。
  • 您的驗證碼無效。
    如果您正在使用進階設定流程,但遷移失敗,您的權杖 (及其驗證碼) 現已失效。
    疑難排解提示:按一下網域的「查看」,然後將新的權杖提供給現有網域。
  • 您要求的憑證數量過多,
    疑難排解提示:一般來說,由於安全資料傳輸層 (SSL) 憑證最小限額,Firebase 託管建議每個 Apex 自訂網域不要超過 20 個子網域。
Mining Certificate

系統正在為您的網域產生 SSL 憑證,

已連結

您的自訂網域具有正確的 DNS 記錄,並具備安全資料傳輸層 (SSL) 憑證,
您可以提供網站內容。