連結自訂網域

您不必放棄使用 Firebase Hosting 的獨特品牌網域名稱。您可以使用自訂網域 (例如 example.comapp.example.com),而非 Firebase 產生的網域,用於 Firebase 託管的網站。

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

本文件的後續內容會逐步說明如何連結自訂網域。

Hosting 設定網域

請確認您已完成專案 Firebase Hosting 頁面中的「開始使用」精靈,以便在 Firebase 專案中建立 Firebase Hosting 網站。

步驟 1:新增自訂網域

  1. 在專案的 Hosting 頁面中,輸入連結自訂網域的輔助程式:

    • 如果您只有一個 Hosting 網站,請按一下「新增自訂網域」
    • 如果您有多個 Hosting 網站,請依序按一下所需網站的「查看」和「新增自訂網域」
  2. 輸入要連結至 Hosting 網站的自訂網域名稱。

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

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

步驟 2:設定自訂網域

如果「連結網域」設定精靈要求,請驗證頂層網域。

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

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

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

    • 類型:新增 TXT 記錄。

      Firebase Hosting 要求您持續在 DNS 設定中保留這個 TXT 記錄,以證明您擁有該網域,並授權 Firebase 為您的網站指派及更新 SSL 憑證。

      您的網域供應商可能會將這個詞彙列為「記錄類型」。

    • Host:輸入頂層網域金鑰

      證明您是頂層網域 (或根網域) 的擁有者,就等於證明您擁有所有子網域。

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

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

      Firebase Hosting 會檢查這個值,證明您擁有網域。

      您的網域供應商可能會將這項條款列為「資料」。

  3. 更新的 TXT 記錄最多需要 24 小時才能完成散布,請耐心等候,然後點選「驗證」

    請注意,您可以點選「取消」來安全關閉「連結網域」視窗,並在稍後重新開啟。這不會影響更新時間,但重新開啟視窗時,系統會提示您重新輸入網域名稱

    在充分的傳播時間過後,您可以按一下 Firebase 主控台「Connect Domain」視窗中的「Verify」,開始 SSL 憑證佈建程序。

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

    如果點選「驗證」後出現錯誤訊息,表示您的記錄尚未套用,或是值可能有誤。

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

快速設定可用於目前未接收流量的新網域,或是您嘗試從其他 Hosting 網站轉移的網域。如果您已在其他代管服務供應商的服務器上建立網域,並需要進行零停機遷移,則可以使用進階設定

進階設定精靈可協助您建立 SSL 憑證和擁有權聲明,讓 Hosting 在接收流量之前,先在網域上提供流量。

等待 SSL 憑證佈建

驗證網域擁有權後,我們會為您的網域佈建安全資料傳輸層 (SSL) 憑證,並在您將 DNS A 記錄指向 Firebase Hosting 後的 24 小時內,在全球 CDN 中部署該憑證。

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

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

您的自訂網域金鑰

新增或編輯 DNS 記錄時,不同網域供應商會要求您在 DNS 管理網站中,針對「Host」欄位輸入不同的內容。以下列出常見的輸入內容,供您參考。如需詳細操作說明,請參閱網域供應商的說明文件。

網域類型 自訂網域鍵
Apex 網域

常見的輸入內容包括:

  • @
  • 頂層網域名稱 (例如 example.com)
  • 將「Host」欄位留空
子網域

常見的輸入內容包括:

  • 完整子網域名稱 (例如 app.example.com)
  • 僅輸入子網域部分 (例如只輸入 app,而省略 .example.com)
  • www.example.com 子網域的 www

常見的網域供應商

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

自訂網域的設定狀態說明

狀態 說明
需要設定

您可能需要變更 DNS 記錄的設定。

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

  • 在較少見的情況下,尤其是使用進階設定流程時,SSL 驗證可能會失敗,原因如下:

    • SSL 憑證挑戰失敗,因此權杖 (提供給網站的 DNS TXT 記錄或上傳檔案) 現已失效。
      疑難排解提示:按一下該網域的「查看」,然後將新的權杖提供給現有網域。
待處理

您已正確設定自訂網域,但 Firebase Hosting 尚未佈建 SSL 憑證。

有時,下列問題可能會導致自訂網域的 SSL 憑證無法正常產生:

  • CAA 記錄限制過多。
    排解問題提示:請確認憑證授權單位 `letsencrypt.org` 和 `pki.goog` 能否為您的網域建立 SSL 憑證。
  • 驗證碼無效。
    如果您使用的是進階設定流程,且遷移作業失敗,則您的權杖 (及其驗證碼) 現已失效。
    疑難排解提示:按一下網域的「查看」,然後將新的權杖提供給現有網域。
  • 您要求的子網域數量過多。
    疑難排解提示:由於 SSL 憑證鑄造限制,Firebase Hosting 一般建議在一個頂層自訂網域中,最多只能有 20 個子網域。
正在建立憑證

系統正在為您的網域產生安全資料傳輸層 (SSL) 憑證。

已連結

您的自訂網域具備正確的 DNS 記錄,且有 SSL 憑證。
您可以提供網站內容。