連結自訂網域

您不必放棄在 Firebase App Hosting 上部署的應用程式專屬品牌網域名稱。您可以使用自訂網域 (例如 example.comapp.example.com),而非 Firebase 產生的網域,為 Firebase 託管的網站命名。Firebase App Hosting 會為每個網域佈建 SSL 憑證。

本文件的其餘部分將逐步說明如何透過下列任一方式連結自訂網域:

為確保服務不中斷,必須按照特定順序更新 DNS 記錄。請按照操作說明遷移網域,以免應用程式發生停機。

如果不擔心停機問題 (例如連結網站應用程式的新網域),請按照操作說明連結新網域

事前準備:DNS 記錄類型

App Hosting「設定網域」精靈可能會要求您新增或移除 1 至 5 個 DNS 記錄,具體取決於網域目前的設定。記錄的類型會決定其功能。以下是 App Hosting 可能要求的記錄類型:

類型 說明 專屬
A 這些記錄包含 IPv4 值 (例如 8.8.8.8),可告知瀏覽器嘗試與網域聯絡時要使用的位址。
AAAA 這些記錄包含 IPv6 值 (例如 2001:4860:4860::8888),這是一種不同類型的位址記錄,功能與 A 記錄大致相同。App Hosting 目前不使用 AAAA 記錄,但會要求您從我們的網域中移除任何現有的記錄 (如有)。
CNAME 這些記錄包含不同的網域名稱,應使用該名稱取代目前網域,以解析 DNS 查詢。CNAME 記錄只能用於子網域 (例如 www.example.com)。App Hosting 使用 CNAME 記錄的原因有兩個:
  • 輕鬆上手:App Hosting 會在可行情況下,要求您將 CNAME 指向以 _custom-domain... 開頭的預先設定網域。
  • 安全資料傳輸層 (SSL) 憑證驗證: App Hosting 會使用 Cloud Certificate Manager 為自訂網域佈建 SSL 憑證。_acme-challenge... 子網域上的 CNAME 記錄可讓憑證管理工具為您建立及續購憑證。完成新手上路程序後,這項記錄不得移除,否則憑證涵蓋範圍將失效。
TXT 這些記錄可讓您將任意中繼資料附加至網域。App Hosting 可讓您使用特定格式的 TXT 記錄 fah-claim=[UUID],指出應在您的網域上提供哪個自訂網域。
CAA 這些記錄可做為許可清單,用於指定獲授權為您的網域核發 SSL 憑證的憑證授權單位。App Hosting 只會在無法為您的網域鑄造憑證時,要求 CAA 記錄。

事前準備:自訂網域名稱

新增或編輯 DNS 記錄時,不同網域供應商會要求您在 DNS 管理網站的「主機」 (或「主機名稱」) 欄位中輸入不同的資料。App Hosting 自訂網域精靈會要求您在「名稱」欄位中輸入相同的值。

以下列出常見的輸入內容,供您參考。如需詳細操作說明,請參閱您的網域供應商說明文件

網域類型 自訂網域名稱
頂層網域

常見的輸入內容包括:

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

常見的輸入內容包括:

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

常見的網域供應商

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

主機 輸入內容
example.com. @
www.example.com. www
主機 輸入內容
example.com. .example.com
www.example.com. www.example.com.
主機 輸入內容
example.com. @
www.example.com. www
主機 輸入內容
example.com. @
www.example.com. www

遷移網域

如要確保應用程式不中斷服務,請按照特定順序設定 DNS 記錄。新增網域後,您必須先完成 DNS 記錄驗證程序,然後再執行另一項驗證步驟,將即時要求導向 App Hosting

步驟 1:新增自訂網域

  1. 開啟專案的 App Hosting 頁面
  2. 使用「View Dashboard」選項選取 App Hosting 後端。
  3. 選取「設定」分頁標籤,然後按一下「新增自訂網域」
  4. 輸入要連結至 App Hosting 網站的自訂網域名稱。
  5. (選用) 勾選這個方塊,即可將自訂網域上的所有要求重新導向至第二個指定網域 (例如 example.comwww.example.com 會重新導向至相同內容)。
  6. 按一下「繼續設定」,即可設定 DNS 記錄,並完成自訂網域的設定。

步驟 2:驗證 DNS 記錄

  1. 1. Firebase 主控台的「Migrate a domain」(遷移網域) 精靈會顯示需要更新的必要記錄,以便將網頁指向 Firebase App Hosting。在 DNS 供應商中新增、移除及儲存網域的記錄,並輸入下列必要記錄的相關資訊:
    • 名稱:輸入記錄的自訂網域名稱。您指定的主機是您要用來提供內容的網域,這個網域可以是頂層網域或子網域。您的網域供應商可能會將這個詞彙列為「主機名稱」、「名稱」或「網域」。
    • 記錄類型:新增提供的 DNS 記錄。
    • :將提供的值指派給記錄。網域供應商可能會將這項條件列為「資料」、「指向」、「內容」、「位址」或「IP 位址」。值欄位的內容會因記錄類型而異,A 和 AAAA 記錄的值為 IP 位址,而 TXT 記錄的值則為字串。
  2. 選取「驗證記錄」App Hosting 會嘗試偵測您在網域供應商中的主要變更。變更最多可能需要 24 小時才會生效。您可以在後端資訊主頁的「設定」>「網域」檢視畫面中查看狀態

步驟 3:直接前往 App Hosting

  1. App Hosting 驗證記錄更新後,「Direct to App Hosting對話方塊會顯示您必須更新的最終記錄,這樣才能將網域導向 App Hosting。如同先前所述,請在 DNS 供應商中新增、移除及儲存網域的記錄,並輸入下列必要記錄的資訊:
    • 名稱:輸入記錄的自訂網域名稱。您指定的主機是您要用來提供內容的網域,這個網域可以是頂層網域或子網域。您的網域供應商可能會將這個詞彙列為「主機名稱」、「名稱」或「網域」。
    • 記錄類型:新增提供的 DNS 記錄。
    • :將提供的值指派給記錄。網域供應商可能會將這項條件列為「資料」、「指向」、「內容」、「位址」或「IP 位址」。值欄位的內容會因記錄類型而異,A 和 AAAA 記錄的值為 IP 位址,而 TXT 記錄的值則為字串。
  2. 選取「驗證記錄」App Hosting 會嘗試偵測您在網域供應商中的主要變更。變更最多可能需要 24 小時才會生效。您可以在後端資訊主頁的「設定」>「網域」檢視畫面中查看狀態

連結新網域

如果不介意停機 (例如連結網頁應用程式的新網域),請按照本節的操作說明進行。

步驟 1:新增自訂網域

  1. 開啟專案的 App Hosting 頁面
  2. 使用「View Dashboard」選項選取 App Hosting 後端。
  3. 選取「設定」分頁標籤,然後按一下「新增自訂網域」
  4. 輸入要連結至 App Hosting 網站的自訂網域名稱。
  5. (選用) 勾選這個方塊,即可將自訂網域上的所有要求重新導向至第二個指定網域 (例如 example.comwww.example.com 會重新導向至相同內容)。
  6. 按一下「繼續設定」,即可設定 DNS 記錄,並完成自訂網域的設定。

步驟 2:驗證 DNS 記錄

  1. Firebase 控制台的「設定網域」精靈會顯示需要更新的必要記錄,以便將網頁指向 Firebase App Hosting。使用下列輸入內容,在 DNS 供應商中新增、移除及儲存網域記錄:
    • 名稱:輸入記錄的自訂網域名稱。您指定的主機是您要用來提供內容的網域,這個網域可以是頂層網域或子網域。您的網域供應商可能會將這個詞彙列為「主機名稱」、「名稱」或「網域」。
    • 記錄類型:新增提供的 DNS 記錄。
    • :將提供的值指派給記錄。網域供應商可能會將這項條件列為「資料」、「指向」、「內容」、「位址」或「IP 位址」。值欄位的內容會因記錄類型而異,A 和 AAAA 記錄的值為 IP 位址,而 TXT 記錄的值則為字串。
  2. 選取「驗證記錄」App Hosting 會嘗試偵測您在網域供應商中的主要變更。變更最多可能需要 24 小時才會生效。您可以在後端資訊主頁的「設定」>「網域」檢視畫面中查看狀態

等待 SSL 憑證佈建

App Hosting 會在您更新 DNS 記錄後,最多需要幾小時才能為網域佈建 SSL 憑證。在某些情況下,您將 DNS 指向 Firebase App Hosting 後,可能需要最多 24 小時才能生效。

您可以使用瀏覽器的安全性工具查看這張憑證。在網域佈建期間,您可能會看到無效的憑證,或無法連線至網域。這是正常的程序,網域憑證可用後就會解決。

注意: Firebase App Hosting 會視需要自動為自訂網域重新提供 SSL 憑證。

自訂網域的狀態說明

狀態 說明
需要設定

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

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

  • 在極少數情況下,SSL 挑戰可能會失敗,因為 DNS 記錄含有 A 記錄或 CNAME 記錄,而這些記錄會指向其他代管服務供應商。
    排解問題提示:請確認您的 A 記錄只指向 Firebase App Hosting,並移除所有 CNAME 記錄。

待處理

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

有時,過度限制的 CAA 記錄可能會導致自訂網域的安全資料傳輸層 (SSL) 憑證無法正常產生。請確認憑證授權單位 `letsencrypt.org` 和 `pki.goog` 可以為您的網域建立 SSL 憑證。

正在建立憑證

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

已連結

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