共用方式為


使用 Azure 應用程式閘道 執行參數型路徑選取 - Azure 入口網站

本文說明如何使用 Azure 入口網站 來設定 Azure 應用程式閘道 v2 SKU 實例,藉由結合 URL Rewrite 與路徑型路由的功能來執行參數型路徑選取。

如尚未擁有 Azure 訂用帳戶,請在開始之前先建立免費帳戶

開始之前

您必須有 應用程式閘道 v2 SKU 實例,才能完成本文中的步驟。 v1 SKU 不支援URL重寫和重寫標頭。 如果您沒有 v2 SKU,請在開始之前建立一個應用程式閘道 v2 SKU 執行個體。

登入 Azure

使用您的 Azure 帳戶登入 Azure 入口網站

設定參數型路徑選取專案

在此範例中,您有購物網站。 產品類別會以 URL 中的查詢字串的形式傳遞。 若要根據查詢字串將要求路由傳送至後端,請遵循下列步驟。

  1. 建立路徑對應。

    顯示 URL 重寫案例 1-1 的螢幕快照。

  2. 建立具有三個重寫規則的重寫集:

    • 第一個規則的條件會檢查 query_string 變數的 category=shoes。 動作會將網址路徑重寫為 /listing1重新評估路徑對應 已啟用。

    • 第二個規則的條件會檢查 變數的 query_string category=bags。 動作會將網址路徑重寫為 /listing2重新評估路徑對應 已啟用。

    • 第三個規則的條件會檢查 query_string 變數的 category=accessories。 動作會將網址路徑重寫為 /listing3重新評估路徑對應 已啟用。

      顯示 URL 重寫案例 1-2 的螢幕快照。

  3. 將此重寫集與先前路徑型規則的預設路徑產生關聯。

    顯示 URL 重寫案例 1-3 的螢幕快照。

如果使用者要求 contoso.com/listing?category=any,則會比對預設路徑,因為路徑對應中的路徑模式 (/listing1、 /, /listing2, /listing3) 不相符。 因為您已將先前的重寫集與此路徑相關聯,因此會評估此重寫集。 查詢字串不符合此重寫集中三個重寫規則中的任何一個條件,因此不會執行任何重寫動作。 要求會以未變更的方式路由傳送至與預設路徑相關聯的後端(也就是 GenericList)。

如果使用者要求 contoso.com/listing?category=shoes,則會比對預設路徑。 在此情況下,第一個規則中的條件會相符。 系統會執行與條件相關聯的動作,以重寫路徑的 /listing1 URL 路徑,並重新評估路徑對應。 重新評估路徑對應時,要求會比對與模式 /listing1相關聯的路徑。 要求會路由傳送至與此模式相關聯的後端(ShoesListBackendPool)。

注意

您可以根據定義的條件,將此案例延伸至任何標頭或 Cookie 值、URL 路徑、查詢字串或伺服器變數。 然後,您可以根據這些條件來路由要求。

若要深入瞭解如何設定一些常見的使用案例,請參閱 常見標頭重寫案例