Sdílet prostřednictvím


Výběr cesty na základě parametrů pomocí služby Azure Application Gateway – Azure Portal

Tento článek popisuje, jak pomocí webu Azure Portal nakonfigurovat instanci SKU služby Azure Application Gateway v2 tak, aby prováděla výběr cesty na základě parametrů zkombinováním možností přepsání adresy URL se směrováním založeným na cestě.

Pokud nemáte předplatné Azure, vytvořte si bezplatný účet před zahájením.

Než začnete

Abyste mohli dokončit kroky v tomto článku, musíte mít instanci SKU Application Gateway v2. V SKU v1 se nepodporují přepsání adres URL a přepsání hlaviček. Pokud nemáte SKU v2, vytvořte instanci Application Gateway v2 SKU před zahájením.

Přihlásit se do Azure

Přihlaste se k webu Azure Portal pomocí svého účtu Azure.

Konfigurace výběru cesty na základě parametrů

V tomto příkladu máte nákupní web. Kategorie produktu se předává jako řetězec dotazu v adrese URL. Pokud chcete požadavek směrovat do back-endu na základě řetězce dotazu, postupujte takto.

  1. Vytvořte mapu cest.

    Snímek obrazovky znázorňující scénář přepsání adresy URL 1–1

  2. Vytvořte sadu přepsání, která má tři pravidla přepsání:

    • První pravidlo má podmínku, která kontroluje proměnnou query_string pro category=shoes. Akce přepíše cestu URL na /listing1. Je povolená znovuhodnocená mapa cest.

    • Druhé pravidlo má podmínku, která kontroluje proměnnou query_string pro category=bags. Akce přepíše cestu URL na /listing2. Je povolená znovuhodnocená mapa cest.

    • Třetí pravidlo má podmínku, která kontroluje proměnnou query_string pro category=accessories. Akce přepíše cestu URL na /listing3. Je povolená znovuhodnocená mapa cest.

      Snímek obrazovky znázorňující scénář přepsání adresy URL 1–2

  3. Přidružte tuto přepisovací sadu k výchozí trase předchozího pravidla založeného na trase.

    Snímek obrazovky znázorňující scénář přepsání adresy URL 1–3

Pokud uživatel požaduje contoso.com/listing?category=any, odpovídá výchozí cestě, protože vzory cest v mapě cest (/listing1, /listing2, /listing3) se neshodují. Vzhledem k tomu, že jste k této cestě přidružovali předchozí sadu přepsání, vyhodnotí se tato sada přepsání. Řetězec dotazu neodpovídá podmínce ani v jednom ze tří přepisovacích pravidel této sady, takže nerozbíhá se žádná akce přepsání. Požadavek se směruje beze změny do back-endu přidruženého k výchozí cestě (což je GenericList).

Pokud uživatel požaduje contoso.com/listing?category=shoes, bude se výchozí cesta shodovat. V tomto případě podmínka prvnímu pravidlu odpovídá. Akce přidružená k podmínce se provede, což přepíše cestu URL na /listing1 a znovu vyhodnotí mapování cesty. Při znovu hodnocení mapy cest žádost odpovídá cestě spojené s vzorem /listing1. Požadavek se směruje do back-endu přidruženého k tomuto vzoru (ShoesListBackendPool).

Note

Tento scénář můžete rozšířit na libovolnou hlavičku nebo hodnotu souboru cookie, cestu url, řetězec dotazu nebo proměnné serveru na základě definovaných podmínek. Požadavky pak můžete směrovat na základě těchto podmínek.

Další informace o tom, jak nastavit některé běžné případy použití, najdete v tématu Běžné scénáře přepsání hlaviček.