教學課程:將現有的自訂 DNS 名稱對應至 Azure App ServiceTutorial: Map an existing custom DNS name to Azure App Service

Azure App Service 可提供可高度擴充、自我修復的 Web 主控服務。Azure App Service provides a highly scalable, self-patching web hosting service. 本教學課程說明如何將現有的自訂網域名稱系統 (DNS) 名稱對應至 App Service。This tutorial shows you how to map an existing custom Domain Name System (DNS) name to App Service.

顯示 Azure 入口網站導覽至 Azure 應用程式的螢幕擷取畫面。

在本教學課程中,您會了解如何:In this tutorial, you learn how to:

  • 使用 CNAME 記錄來對應子網域 (例如,www.contoso.com)。Map a subdomain (for example, www.contoso.com) by using a CNAME record.
  • 使用 A 記錄來對應根網域 (例如,contoso.com)。Map a root domain (for example, contoso.com) by using an A record.
  • 使用 CNAME 記錄來對應萬用字元網域 (例如,*.contoso.com)。Map a wildcard domain (for example, *.contoso.com) by using a CNAME record.
  • 將預設 URL 重新導向至自訂目錄。Redirect the default URL to a custom directory.
  • 使用指令碼來自動對應網域。Automate domain mapping with scripts.

必要條件Prerequisites

若要完成本教學課程:To complete this tutorial:

  • 建立 App Service 應用程式,或使用您針對另一個教學課程建立的應用程式。Create an App Service app, or use an app that you created for another tutorial.

  • 購買網域名稱,並確定您擁有網域提供者 (例如 GoDaddy) 之 DNS 登錄的存取權。Purchase a domain name, and make sure you have access to the DNS registry for your domain provider (such as GoDaddy).

    例如,若要為 contoso.comwww.contoso.com 新增 DNS 項目,您必須有權設定 contoso.com 根網域的 DNS 設定。For example, to add DNS entries for contoso.com and www.contoso.com, you must be able to configure the DNS settings for the contoso.com root domain.

    注意

    如果您沒有現有的網域名稱,請考慮使用 Azure 入口網站購買網域If you don't have an existing domain name, consider purchasing a domain by using the Azure portal.

準備應用程式Prepare the app

若要將自訂 DNS 名稱對應至 Web 應用程式,Web 應用程式的 App Service 方案必須是付費層 (若為 Azure Functions,則為 [共用]、[基本]、[標準]、[進階] 或 [取用])。To map a custom DNS name to a web app, the web app's App Service plan must be a paid tier (Shared, Basic, Standard, Premium, or Consumption for Azure Functions). 在此步驟中,您要確定 App Service 應用程式位於支援的定價層。In this step, you make sure that the App Service app is in the supported pricing tier.

注意

App Service 的免費和共用 (預覽) 主控方案均為基本層,在與其他 App Service 應用程式相同的 Azure 虛擬機器上執行。App Service Free and Shared (preview) hosting plans are base tiers that run on the same Azure virtual machines as other App Service apps. 某些應用程式可能屬於其他客戶。Some apps might belong to other customers. 這些層僅用於開發與測試。These tiers are intended to be used only for development and testing purposes.

注意

將自訂網域移除或新增至您的 web 應用程式,將會重新開機您的網站。Removing or adding a custom domain to your web app will cause your site to be restarted.

登入 AzureSign in to Azure

開啟 Azure 入口網站並使用您的 Azure 帳戶登入。Open the Azure portal, and sign in with your Azure account.

在 Azure 入口網站中選取應用程式Select the app in the Azure portal

  1. 搜尋並選取 [應用程式服務]。Search for and select App Services.

    顯示選取 App Service 的螢幕擷取畫面。

  2. 在 [應用程式服務] 頁面上,選取您的 Azure 應用程式名稱。On the App Services page, select the name of your Azure app.

    顯示入口網站導覽至 Azure 應用程式的螢幕擷取畫面。

您看到 App Service 應用程式的管理分頁。You see the management page of the App Service app.

檢查定價層Check the pricing tier

  1. 在應用程式分頁的左側窗格中,捲動到 [設定] 區段,然後選取 [擴大 (App Service 方案)]。In the left pane of the app page, scroll to the Settings section and select Scale up (App Service plan).

    顯示 [擴大 (App Service 方案)] 功能表的螢幕擷取畫面。

  2. 會以藍色框線醒目顯示應用程式目前的層。The app's current tier is highlighted by a blue border. 請檢查以確定您的應用程式不是位於 F1 層。Check to make sure that the app isn't in the F1 tier. F1 層不支援自訂 DNS。Custom DNS isn't supported in the F1 tier.

    顯示建議定價層的螢幕擷取畫面。

  3. 如果 App Service 方案不是位於 F1 層,請關閉 [擴大] 分頁,然後跳至 對應 CNAME 記錄If the App Service plan isn't in the F1 tier, close the Scale up page and skip to Map a CNAME record.

擴大 App Service 方案Scale up the App Service plan

  1. 選取任何非免費層 (D1B1B2B3 或「生產」類別中的任何一層)。Select any of the non-free tiers (D1, B1, B2, B3, or any tier in the Production category). 如需其他選項,請選取 [查看其他選項]。For additional options, select See additional options.

  2. 選取 [套用]。Select Apply.

    顯示檢查定價層的螢幕擷取畫面。

    當您看見下列通知時,表示擴充作業已完成。When you see the following notification, the scale operation is complete.

    顯示擴充作業確認的螢幕擷取畫面。

取得網域驗證識別碼Get a domain verification ID

若要將自訂網域新增至您的應用程式,您必須將驗證識別碼新增為包含網域提供者的 TXT 記錄,以驗證網域的擁有權。To add a custom domain to your app, you need to verify your ownership of the domain by adding a verification ID as a TXT record with your domain provider. 在應用程式頁面的左側窗格中,選取 [自訂網域]。In the left pane of your app page, select Custom domains. 在下一個步驟的 [自訂網域] 頁面中,複製 [自訂網域驗證識別碼] 方快中的識別碼。Copy the ID in the Custom Domain Verification ID box in the Custom Domains page for the next step.

在 [自訂網域驗證識別碼] 方塊中顯示識別碼的螢幕擷取畫面。

警告

將網域驗證識別碼新增到您的自訂網域,可以防止無關聯的 DNS 項目並有助於避免子網域接管。Adding domain verification IDs to your custom domain can prevent dangling DNS entries and help to avoid subdomain takeovers. 針對您先前設定而沒有此驗證識別碼的自訂網域,您應將驗證識別碼新增至 DNS 記錄,以防止網域承受相同的風險。For custom domains you previously configured without this verification ID, you should protect them from the same risk by adding the verification ID to your DNS record. 如需有關此常見高嚴重性威脅的詳細資訊,請參閱子網域接管For more information on this common high-severity threat, see Subdomain takeover.

對應您的網域Map your domain

您可以使用 CNAME 記錄或 A 記錄將自訂 DNS 名稱對應至 App Service。You can use either a CNAME record or an A record to map a custom DNS name to App Service. 請依照個別步驟操作:Follow the respective steps:

注意

您應對所有自訂 DNS 名稱使用 CNAME 記錄,但根網域除外 (例如 contoso.com)。You should use CNAME records for all custom DNS names except root domains (for example, contoso.com). 對於根網域,請使用 A 記錄。For root domains, use A records.

對應 CNAME 記錄Map a CNAME record

在教學課程範例中,您新增 www 子網域 (例如,www.contoso.com) 的 CNAME 記錄。In the tutorial example, you add a CNAME record for the www subdomain (for example, www.contoso.com).

如果您有 www 以外的子網域,請以您的子網域取代 www (例如,如果您的自訂網域為 sub.constoso.com,請使用 sub)。If you have a subdomain other than www, replace www with your subdomain (for example, with sub if your custom domain is sub.constoso.com).

存取網域提供者中的 DNS 記錄Access DNS records with a domain provider

注意

您可以使用 Azure DNS 來設定 Azure App Service 的自訂 DNS 名稱。You can use Azure DNS to configure a custom DNS name for Azure App Service. 如需詳細資訊,請參閱使用 Azure DNS 為 Azure 服務提供自訂網域設定For more information, see Use Azure DNS to provide custom domain settings for an Azure service.

  1. 登入網域提供者的網站。Sign in to the website of your domain provider.

  2. 尋找管理 DNS 記錄的頁面。Find the page for managing DNS records. 每個網域提供者有自己的 DNS 記錄介面,請查閱您的提供者文件。Every domain provider has its own DNS records interface, so consult the provider's documentation. 在網站中尋找標示為 [網域名稱] 、[DNS] 或 [名稱伺服器管理] 的區域。Look for areas of the site labeled Domain Name, DNS, or Name Server Management.

    通常可透過檢視您的帳戶資訊,然後尋找 [我的網域] 之類的連結,來找到 DNS 記錄分頁。Often, you can find the DNS records page by viewing your account information and then looking for a link such as My domains. 移至該分頁,然後尋找名為 區域檔案DNS 記錄進階設定 之類的連結。Go to that page, and then look for a link that's named something like Zone file, DNS Records, or Advanced configuration.

    下列螢幕擷取畫面是 DNS 記錄頁面的範例:The following screenshot is an example of a DNS records page:

    顯示範例 DNS 記錄頁面的螢幕擷取畫面。

  3. 在螢幕擷取畫面範例中,選取 [新增] 以建立記錄。In the example screenshot, select Add to create a record. 某些提供者有不同的連結來新增其他記錄類型。Some providers have different links to add different record types. 同樣地,請參閱提供者的文件。Again, consult the provider's documentation.

注意

對於某些提供者 (例如 GoDaddy),您必須選取另外的 [儲存變更] 連結,才會讓 DNS 記錄的變更生效。For certain providers, such as GoDaddy, changes to DNS records don't become effective until you select a separate Save Changes link.

建立 CNAME 記錄Create the CNAME record

將子網域對應到應用程式的預設網域名稱 (<app-name>.azurewebsites.net,其中 <app-name> 是您的應用程式的名稱)。Map a subdomain to the app's default domain name (<app-name>.azurewebsites.net, where <app-name> is the name of your app). 若要建立 www 子網域的 CNAME 對應,請建立兩個記錄:To create a CNAME mapping for the www subdomain, create two records:

記錄類型Record type HostHost Value 註解Comments
CNAMECNAME www <app-name>.azurewebsites.net 對應本身的網域。The domain mapping itself.
TXTTXT asuid.www 您稍早所獲得的驗證識別碼The verification ID you got earlier App Service 會存取 asuid.<subdomain> TXT 記錄,以驗證自訂網域的擁有權。App Service accesses the asuid.<subdomain> TXT record to verify your ownership of the custom domain.

新增 CNAME 和 TXT 記錄之後,DNS 記錄分頁看起來如下列範例所示:After you add the CNAME and TXT records, the DNS records page looks like the following example:

顯示入口網站導覽至 Azure 應用程式的螢幕擷取畫面。

在 Azure 中啟用 CNAME 記錄對應Enable the CNAME record mapping in Azure

  1. 在 Azure 入口網站之應用程式分頁的左側窗格中,選取 [自訂網域]。In the left pane of the app page in the Azure portal, select Custom domains.

    顯示 [自訂網域] 功能表的螢幕擷取畫面。

  2. 在應用程式的 [自訂網域] 頁面上,於清單中新增自訂的完整 DNS 名稱 (www.contoso.com)。On the Custom domains page of the app, add the fully qualified custom DNS name (www.contoso.com) to the list.

  3. 選取 [新增自訂網域]。Select Add custom domain.

    顯示 [新增主機名稱] 項目的螢幕擷取畫面。

  4. 輸入您新增 CNAME 記錄的完整網域名稱,例如 www.contoso.comType the fully qualified domain name that you added a CNAME record for, such as www.contoso.com.

  5. 選取 [驗證]。Select Validate. [新增自訂網域] 頁面隨即出現。The Add custom domain page appears.

  6. 確定 [主機名稱記錄類型] 已設定為 [CNAME (www.example.com 或任何子網域)]。Make sure that Hostname record type is set to CNAME (www.example.com or any subdomain). 選取 [新增自訂網域]。Select Add custom domain.

    顯示 [新增自訂網域] 按鈕的螢幕擷取畫面。

    可能需要一些時間,新的自訂網域才會反映在應用程式的 [自訂網域] 頁面中。It might take some time for the new custom domain to be reflected in the app's Custom Domains page. 重新整理瀏覽器以更新資料。Refresh the browser to update the data.

    顯示新增 CNAME 記錄的螢幕擷取畫面。

    注意

    自訂網域的警告標籤表示其尚未繫結至 TLS/SSL 憑證。A warning label for your custom domain means that it's not yet bound to a TLS/SSL certificate. 任何從瀏覽器到自訂網域的 HTTPS 要求都會收到錯誤或警告 (視瀏覽器而定)。Any HTTPS request from a browser to your custom domain will receive an error or warning, depending on the browser. 若要新增 TLS 繫結,請參閱在 Azure App Service 中使用 TLS/SSL 繫結保護自訂 DNS 名稱To add a TLS binding, see Secure a custom DNS name with a TLS/SSL binding in Azure App Service.

    如果稍早錯過某個步驟或在某處打錯字,頁面底部會出現驗證錯誤。If you missed a step or made a typo somewhere earlier, a verification error appears at the bottom of the page.

    顯示驗證錯誤的螢幕擷取畫面。

對應 A 記錄Map an A record

在教學課程範例中,您新增根網域 (例如,contoso.com) 的 A 記錄。In the tutorial example, you add an A record for the root domain (for example, contoso.com).

複製應用程式的 IP 位址Copy the app's IP address

若要對應 A 記錄,您需要應用程式的外部 IP 位址。To map an A record, you need the app's external IP address. 您可以在 Azure 入口網站中應用程式的 [自訂網域] 頁面上找到這個 IP 位址。You can find this IP address on the app's Custom Domains page in the Azure portal.

  1. 在 Azure 入口網站之應用程式分頁的左側窗格中,選取 [自訂網域]。In the left pane of the app page in the Azure portal, select Custom domains.

    顯示 [自訂網域] 功能表的螢幕擷取畫面。

  2. 在 [自訂網域] 頁面上,複製應用程式的 IP 位址。On the Custom Domains page, copy the app's IP address.

    顯示入口網站導覽至 Azure 應用程式的螢幕擷取畫面。

存取網域提供者中的 DNS 記錄Access DNS records with a domain provider

注意

您可以使用 Azure DNS 來設定 Azure App Service 的自訂 DNS 名稱。You can use Azure DNS to configure a custom DNS name for Azure App Service. 如需詳細資訊,請參閱使用 Azure DNS 為 Azure 服務提供自訂網域設定For more information, see Use Azure DNS to provide custom domain settings for an Azure service.

  1. 登入網域提供者的網站。Sign in to the website of your domain provider.

  2. 尋找管理 DNS 記錄的頁面。Find the page for managing DNS records. 每個網域提供者有自己的 DNS 記錄介面,請查閱您的提供者文件。Every domain provider has its own DNS records interface, so consult the provider's documentation. 在網站中尋找標示為 [網域名稱] 、[DNS] 或 [名稱伺服器管理] 的區域。Look for areas of the site labeled Domain Name, DNS, or Name Server Management.

    通常可透過檢視您的帳戶資訊,然後尋找 [我的網域] 之類的連結,來找到 DNS 記錄分頁。Often, you can find the DNS records page by viewing your account information and then looking for a link such as My domains. 移至該分頁,然後尋找名為 區域檔案DNS 記錄進階設定 之類的連結。Go to that page, and then look for a link that's named something like Zone file, DNS Records, or Advanced configuration.

    下列螢幕擷取畫面是 DNS 記錄頁面的範例:The following screenshot is an example of a DNS records page:

    顯示範例 DNS 記錄頁面的螢幕擷取畫面。

  3. 在螢幕擷取畫面範例中,選取 [新增] 以建立記錄。In the example screenshot, select Add to create a record. 某些提供者有不同的連結來新增其他記錄類型。Some providers have different links to add different record types. 同樣地,請參閱提供者的文件。Again, consult the provider's documentation.

注意

對於某些提供者 (例如 GoDaddy),您必須選取另外的 [儲存變更] 連結,才會讓 DNS 記錄的變更生效。For certain providers, such as GoDaddy, changes to DNS records don't become effective until you select a separate Save Changes link.

建立 A 記錄Create the A record

若要將 A 記錄對應至應用程式 (通常是根網域),請建立兩筆記錄:To map an A record to an app, usually to the root domain, create two records:

記錄類型Record type HostHost Value 註解Comments
AA @ 來自複製應用程式的 IP 位址的 IP 位址IP address from Copy the app's IP address 對應本身的網域 (@ 通常代表根網域)。The domain mapping itself (@ typically represents the root domain).
TXTTXT asuid 您稍早所獲得的驗證識別碼The verification ID you got earlier App Service 會存取 asuid.<subdomain> TXT 記錄,以驗證自訂網域的擁有權。App Service accesses the asuid.<subdomain> TXT record to verify your ownership of the custom domain. 若為根網域,請使用 asuidFor the root domain, use asuid.

注意

若要使用 A 記錄而非建議的 CNAME 記錄來新增子網域 (像是 www.contoso.com),您的 A 記錄和 TXT 記錄看起來應該如下表所示:To add a subdomain (like www.contoso.com) by using an A record instead of a recommended CNAME record, your A record and TXT record should look like the following table instead:

記錄類型Record type HostHost Value
AA www 來自複製應用程式的 IP 位址的 IP 位址IP address from Copy the app's IP address
TXTTXT asuid.www 您稍早所獲得的驗證識別碼The verification ID you got earlier

新增記錄之後,DNS 記錄分頁看起來如下列範例所示:After the records are added, the DNS records page looks like the following example:

顯示 DNS 記錄頁面的螢幕擷取畫面。

在應用程式中啟用 A 記錄對應Enable the A record mapping in the app

回到 Azure 入口網站中的應用程式 [自訂網域] 分頁,在清單中新增自訂的完整 DNS 名稱 (例如,contoso.com)。Back in the app's Custom Domains page in the Azure portal, add the fully qualified custom DNS name (for example, contoso.com) to the list.

  1. 選取 [新增自訂網域]。Select Add custom domain.

    顯示新增主機名稱的螢幕擷取畫面。

  2. 輸入您設定 A 記錄的完整網域名稱,例如 contoso.comType the fully qualified domain name that you configured the A record for, such as contoso.com.

  3. 選取 [驗證]。Select Validate. [新增自訂網域] 頁面隨即顯示。The Add custom domain page is shown.

  4. 請確定 [主機名稱記錄類型] 設為 [A 記錄 (example.com)]。Make sure that Hostname record type is set to A record (example.com). 選取 [新增自訂網域]。Select Add custom domain.

    顯示將 DNS 名稱新增至應用程式的螢幕擷取畫面。

    可能需要一些時間,新的自訂網域才會反映在應用程式的 [自訂網域] 頁面中。It might take some time for the new custom domain to be reflected in the app's Custom Domains page. 重新整理瀏覽器以更新資料。Refresh the browser to update the data.

    顯示新增 A 記錄的螢幕擷取畫面。

    注意

    自訂網域的警告標籤表示其尚未繫結至 TLS/SSL 憑證。A warning label for your custom domain means that it's not yet bound to a TLS/SSL certificate. 任何從瀏覽器到自訂網域的 HTTPS 要求都會收到錯誤或警告 (視瀏覽器而定)。Any HTTPS request from a browser to your custom domain will receive an error or warning, depending on the browser. 若要新增 TLS 繫結,請參閱在 Azure App Service 中使用 TLS/SSL 繫結保護自訂 DNS 名稱To add a TLS binding, see Secure a custom DNS name with a TLS/SSL binding in Azure App Service.

    如果稍早錯過某個步驟或在某處打錯字,頁面底部會出現驗證錯誤。If you missed a step or made a typo somewhere earlier, a verification error appears at the bottom of the page.

    顯示驗證錯誤的螢幕擷取畫面。

對應萬用字元網域Map a wildcard domain

在教學課程範例中,您藉由新增 CNAME 記錄,將萬用字元 DNS 名稱 (例如,*.contoso.com) 對應至 App Service 應用程式。In the tutorial example, you map a wildcard DNS name (for example, *.contoso.com) to the App Service app by adding a CNAME record.

存取網域提供者中的 DNS 記錄Access DNS records with a domain provider

注意

您可以使用 Azure DNS 來設定 Azure App Service 的自訂 DNS 名稱。You can use Azure DNS to configure a custom DNS name for Azure App Service. 如需詳細資訊,請參閱使用 Azure DNS 為 Azure 服務提供自訂網域設定For more information, see Use Azure DNS to provide custom domain settings for an Azure service.

  1. 登入網域提供者的網站。Sign in to the website of your domain provider.

  2. 尋找管理 DNS 記錄的頁面。Find the page for managing DNS records. 每個網域提供者有自己的 DNS 記錄介面,請查閱您的提供者文件。Every domain provider has its own DNS records interface, so consult the provider's documentation. 在網站中尋找標示為 [網域名稱] 、[DNS] 或 [名稱伺服器管理] 的區域。Look for areas of the site labeled Domain Name, DNS, or Name Server Management.

    通常可透過檢視您的帳戶資訊,然後尋找 [我的網域] 之類的連結,來找到 DNS 記錄分頁。Often, you can find the DNS records page by viewing your account information and then looking for a link such as My domains. 移至該分頁,然後尋找名為 區域檔案DNS 記錄進階設定 之類的連結。Go to that page, and then look for a link that's named something like Zone file, DNS Records, or Advanced configuration.

    下列螢幕擷取畫面是 DNS 記錄頁面的範例:The following screenshot is an example of a DNS records page:

    顯示範例 DNS 記錄頁面的螢幕擷取畫面。

  3. 在螢幕擷取畫面範例中,選取 [新增] 以建立記錄。In the example screenshot, select Add to create a record. 某些提供者有不同的連結來新增其他記錄類型。Some providers have different links to add different record types. 同樣地,請參閱提供者的文件。Again, consult the provider's documentation.

注意

對於某些提供者 (例如 GoDaddy),您必須選取另外的 [儲存變更] 連結,才會讓 DNS 記錄的變更生效。For certain providers, such as GoDaddy, changes to DNS records don't become effective until you select a separate Save Changes link.

建立 CNAME 記錄Create the CNAME record

將萬用字元名稱 * 對應到應用程式的預設網域名稱 (<app-name>.azurewebsites.net,其中 <app-name> 是您的應用程式的名稱)。Map a wildcard name * to the app's default domain name (<app-name>.azurewebsites.net, where <app-name> is the name of your app). 若要對應萬用字元名稱,請建立兩筆記錄:To map the wildcard name, create two records:

記錄類型Record type HostHost Value 註解Comments
CNAMECNAME * <app-name>.azurewebsites.net 對應本身的網域。The domain mapping itself.
TXTTXT asuid 您稍早所獲得的驗證識別碼The verification ID you got earlier App Service 會存取 asuid TXT 記錄,以驗證自訂網域的擁有權。App Service accesses the asuid TXT record to verify your ownership of the custom domain.

針對 *.contoso.com 網域範例,CNAME 記錄會將名稱 * 對應至 <app-name>.azurewebsites.netFor the *.contoso.com domain example, the CNAME record will map the name * to <app-name>.azurewebsites.net.

新增 CNAME 時,DNS 記錄分頁看起來如下列範例所示:When the CNAME is added, the DNS records page looks like the following example:

顯示導覽至 Azure 應用程式的螢幕擷取畫面。

在應用程式中啟用 CNAME 記錄對應Enable the CNAME record mapping in the app

您現在可以將符合萬用字元名稱的任何子網域新增至應用程式 (例如,sub1.contoso.comsub2.contoso.com*.contoso.com 均符合 *.contoso.com)。You can now add any subdomain that matches the wildcard name to the app (for example, sub1.contoso.com, sub2.contoso.com and *.contoso.com both match *.contoso.com).

  1. 在 Azure 入口網站之應用程式分頁的左側窗格中,選取 [自訂網域]。In the left pane of the app page in the Azure portal, select Custom domains.

    顯示 [自訂網域] 功能表的螢幕擷取畫面。

  2. 選取 [新增自訂網域]。Select Add custom domain.

    顯示新增主機名稱的螢幕擷取畫面。

  3. 輸入符合萬用字元網域的完整網域名稱 (例如,sub1.contoso.com),然後選取 [驗證]。Type a fully qualified domain name that matches the wildcard domain (for example, sub1.contoso.com), and then select Validate.

    [新增自訂網域] 按鈕會啟用。The Add custom domain button is activated.

  4. 確定 [主機名稱記錄類型] 已設定為 [CNAME 記錄 (www.example.com 或任何子網域)]。Make sure that Hostname record type is set to CNAME record (www.example.com or any subdomain). 選取 [新增自訂網域]。Select Add custom domain.

    顯示將 DNS 名稱新增至應用程式的螢幕擷取畫面。

    可能需要一些時間,新的自訂網域才會反映在應用程式的 [自訂網域] 頁面中。It might take some time for the new custom domain to be reflected in the app's Custom Domains page. 重新整理瀏覽器以更新資料。Refresh the browser to update the data.

  5. 再次選取 + 圖示,以新增另一個與萬用字元網域相符的自訂網域。Select the + icon again to add another custom domain that matches the wildcard domain. 例如,新增 sub2.contoso.comFor example, add sub2.contoso.com.

    顯示新增 CNAME 記錄的螢幕擷取畫面。

    注意

    自訂網域的警告標籤表示其尚未繫結至 TLS/SSL 憑證。A warning label for your custom domain means that it's not yet bound to a TLS/SSL certificate. 任何從瀏覽器到自訂網域的 HTTPS 要求都會收到錯誤或警告 (視瀏覽器而定)。Any HTTPS request from a browser to your custom domain will receive an error or warning, depending on the browser. 若要新增 TLS 繫結,請參閱在 Azure App Service 中使用 TLS/SSL 繫結保護自訂 DNS 名稱To add a TLS binding, see Secure a custom DNS name with a TLS/SSL binding in Azure App Service.

在瀏覽器中測試Test in a browser

瀏覽至您稍早設定的 DNS 名稱 (例如 contoso.comwww.contoso.comsub1.contoso.comsub2.contoso.com)。Browse to the DNS names that you configured earlier (for example, contoso.com, www.contoso.com, sub1.contoso.com, and sub2.contoso.com).

顯示導覽至 Azure 應用程式的螢幕擷取畫面。

解析 404「找不到」Resolve 404 "Not Found"

如果您收到 HTTP 404 (找不到) 錯誤當您流覽至自訂網域的 URL 時,請確認您的網域使用 nslookup.io解析為應用程式的 IP 位址。If you receive an HTTP 404 (Not Found) error when you browse to the URL of your custom domain, verify that your domain resolves to your app's IP address by using nslookup.io. 如果沒有,請確認已使用相同的網站正確設定 A 和 CNAME 記錄。If not, verify that the A and CNAME records are configured correctly using the same site. 如果正確地解析 IP,但您仍收到404,則您的瀏覽器可能已快取您網域的舊 IP 位址。If it resolves the IP correctly, but you're still getting a 404, then your browser may have cached the old IP address of your domain. 請清除快取,然後再次測試 DNS 解析。Clear the cache, and test DNS resolution again. 在 Windows 電腦上,您可以使用 ipconfig /flushdns 清除快取。On a Windows machine, you clear the cache with ipconfig /flushdns.

移轉作用中的網域Migrate an active domain

若要將即時網站及其 DNS 網域名稱遷移至 App Service 而不要停機,請參閱將作用中的 DNS 名稱遷移至 Azure App ServiceTo migrate a live site and its DNS domain name to App Service with no downtime, see Migrate an active DNS name to Azure App Service.

重新導向至自訂目錄Redirect to a custom directory

根據預設,App Service 會將 Web 要求導向應用程式程式碼的根目錄。By default, App Service directs web requests to the root directory of your app code. 但是某些 Web 架構並非從根目錄開始。But certain web frameworks don't start in the root directory. 例如,Laravelpublic 子目錄開始。For example, Laravel starts in the public subdirectory. 若要繼續 contoso.com DNS 範例,這類應用程式可在 http://contoso.com/public 上存取,但您會想要將 http://contoso.com 改為導向 public 目錄。To continue the contoso.com DNS example, such an app is accessible at http://contoso.com/public, but you want to direct http://contoso.com to the public directory instead. 這個步驟與 DNS 解析無關,反而與自訂虛擬目錄有關。This step doesn't involve DNS resolution but is about customizing the virtual directory.

若要為 Windows 應用程式自訂虛擬目錄,請在 web 應用程式頁面的左窗格中選取 [ 應用程式設定 ]。To do customize a virtual directory for Windows apps, select Application settings in the left pane of your web app page.

注意

Linux 應用程式沒有此頁面。Linux apps don't have this page. 若要變更 Linux 應用程式的網站根目錄,請參閱 (PHP的語言特定設定指南,例如) 。To change the site root for Linux apps, see the language-specific configuration guides (PHP, for example).

在頁面底部,根虛擬目錄 / 預設指向 site\wwwroot,這是應用程式程式碼的根目錄。At the bottom of the page, the root virtual directory / points to site\wwwroot by default, which is the root directory of your app code. 例如,請將其變更為指向 site\wwwroot\public,然後再儲存變更。Change it to point to the site\wwwroot\public instead, for example, and save your changes.

顯示自訂虛擬目錄的螢幕擷取畫面。

在作業完成後,應用程式應該會傳回位於根路徑 (如 http://contoso.com) 的正確頁面。After the operation finishes, your app should return the right page at the root path (for example, http://contoso.com).

使用指令碼進行自動化Automate with scripts

您可以使用 Azure CLIAzure PowerShell,透過指令碼將自訂網域的管理作業自動化。You can automate management of custom domains with scripts by using the Azure CLI or Azure PowerShell.

Azure CLIAzure CLI

下列命令會在 App Service 應用程式中新增所設定的自訂 DNS 名稱。The following command adds a configured custom DNS name to an App Service app.

az webapp config hostname add \
    --webapp-name <app-name> \
    --resource-group <resource_group_name> \
    --hostname <fully_qualified_domain_name>

如需詳細資訊,請參閱將自訂網域對應至 Web 應用程式For more information, see Map a custom domain to a web app.

Azure PowerShellAzure PowerShell

注意

本文已更新為使用 Azure Az PowerShell 模組。This article has been updated to use the Azure Az PowerShell module. Az PowerShell 模組是用來與 Azure 互動的建議 PowerShell 模組。The Az PowerShell module is the recommended PowerShell module for interacting with Azure. 若要開始使用 Az PowerShell 模組,請參閱安裝 Azure PowerShellTo get started with the Az PowerShell module, see Install Azure PowerShell. 若要瞭解如何遷移至 Az PowerShell 模組,請參閱將 Azure PowerShell 從 AzureRM 遷移至 Az。To learn how to migrate to the Az PowerShell module, see Migrate Azure PowerShell from AzureRM to Az.

下列命令會在 App Service 應用程式中新增所設定的自訂 DNS 名稱。The following command adds a configured custom DNS name to an App Service app.

Set-AzWebApp `
    -Name <app-name> `
    -ResourceGroupName <resource_group_name> ` 
    -HostNames @("<fully_qualified_domain_name>","<app-name>.azurewebsites.net")

如需詳細資訊,請參閱將自訂網域指派給 Web 應用程式For more information, see Assign a custom domain to a web app.

後續步驟Next steps

在本教學課程中,您已了解如何:In this tutorial, you learned how to:

  • 使用 CNAME 記錄來對應子網域。Map a subdomain by using a CNAME record.
  • 使用 A 記錄來對應根網域。Map a root domain by using an A record.
  • 使用 CNAME 記錄來對應萬用字元網域。Map a wildcard domain by using a CNAME record.
  • 將預設 URL 重新導向至自訂目錄。Redirect the default URL to a custom directory.
  • 使用指令碼來自動對應網域。Automate domain mapping with scripts.

繼續進行下一個教學課程,以了解如何將自訂 TLS/SSL 憑證繫結至 Web 應用程式。Continue to the next tutorial to learn how to bind a custom TLS/SSL certificate to a web app.