連結自訂網域

您不必放棄應用程式的專屬品牌網域名稱,就能在 Firebase App Hosting 上部署應用程式。您可以為 Firebase 託管網站使用自訂網域 (例如 example.comapp.example.com),取代 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 記錄可讓 Certificate Manager 為您建立及續訂憑證。完成新手上路程序後,請勿移除這項記錄,否則認證效期將會失效。
TXT 您可以在網域中附加任意中繼資料。App Hosting 可讓您使用特定格式的 TXT 記錄 (fah-claim=[UUID]),指出應在網域上放送哪個自訂網域。
CAA 這些記錄會做為允許清單,指定有權為網域核發 SSL 憑證的憑證授權單位。如果 App Hosting 無法為您的網域核發憑證,才會要求提供 CAA 記錄。

事前準備:自訂網域名稱

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

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

網域類型 自訂網域名稱
Apex 網域

常見的輸入內容包括:

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

常見的輸入內容包括:

  • 完整子網域名稱 (例如 app.example.com)
  • 僅限子網域部分 (例如僅限 app,不含 .example.com)

常見網域供應商

以下列出幾個常見的網域供應商,以及各供應商可能要求的輸入類型。 我們會盡可能更新這項資訊,但如需詳細操作說明,請參閱網域供應商的說明文件

遷移網域

如要將網域從其他供應商轉移至 App Hosting,且不想發生任何停機情形,請使用 Firebase 控制台的「遷移網域」流程。該流程會引導您完成兩步驟程序,先準備App Hosting在網域上放送內容,再將流量導向App Hosting伺服器。

步驟 1:新增自訂網域

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

步驟 2:準備網域

  1. 選取「設定網域」精靈的「遷移網域」分頁標籤
  2. 請按照第一個步驟「準備網域」中的操作說明進行,包括為 App Hosting 提供偏好的後端服務,以及為網域建立安全的 TLS 連線,所需的一系列變更。在 DNS 供應商的系統中,使用下列必要記錄的輸入內容,新增、移除及儲存網域記錄:
    • 名稱:輸入記錄的自訂網域名稱。您指定的主機是您要放送內容的網域,可以是頂層網域或子網域。網域供應商可能會將這個字詞列為「主機名稱」、「名稱」或「網域」
    • 記錄類型:新增提供的 DNS 記錄。
    • 價值:將提供的值指派給記錄。網域供應商可能會將這個字詞列為「資料」、「指向」、「內容」、「地址」或「IP 位址」。值欄位的內容會因記錄類型而異,例如 TXT 記錄是字串。
  3. 選取「驗證記錄」App Hosting會嘗試偵測您在網域供應商所做的變更。變更最多可能需要 24 小時才會生效。你可以在後端資訊主頁的「設定」>「網域」檢視畫面中查看狀態

步驟 3:前往 App Hosting

  1. App Hosting 驗證上一個步驟的記錄更新後,精靈會進入最後的「直接前往 App Hosting步驟。這個步驟會顯示您必須進行的記錄更新,將網域流量導向 App Hosting 伺服器。如先前所述,請在 DNS 供應商的網域中新增、移除及儲存記錄,並為必要記錄輸入下列內容:
    • 名稱:輸入記錄的自訂網域名稱。您指定的主機是您要放送內容的網域,可以是頂層網域或子網域。網域供應商可能會將這個字詞列為「主機名稱」、「名稱」或「網域」
    • 記錄類型:新增提供的 DNS 記錄。
    • 價值:將提供的值指派給記錄。網域供應商可能會將這個字詞列為「資料」、「指向」、「內容」、「地址」或「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 位址」。值欄位的內容會因記錄類型而異,例如 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 憑證。
您可以提供網站內容。