Sdílet prostřednictvím


Přepsání adresy URL

Azure Front Door poskytuje podporu přepsání adresy URL a umožňuje upravit cestu požadavku, která se směruje do vašeho původu. Tato výkonná funkce umožňuje definovat podmínky, které určují, kdy se má adresa URL nebo zadaná hlavička přepsat. Tyto podmínky jsou založeny na informacích, které jsou přítomné v požadavku a odpovědi.

Pomocí přepsání adresy URL máte možnost přesměrovat koncové uživatele na různé zdroje na základě faktorů, jako je jejich typ zařízení nebo typ souboru, který požaduje. Akci přepsání adresy URL je možné snadno nakonfigurovat v rámci sady pravidel a zajistit tak jemně odstupňovanou kontrolu nad chováním směrování.

Snímek obrazovky s akcí přepsání adresy URL v konfiguraci sady pravidel

Vzor zdroje

Zdrojový vzor představuje cestu URL v počátečním požadavku, který chcete nahradit. Zdrojový model v současné době využívá odpovídající přístup založený na předponách. Chcete-li se shodovat se všemi cestami URL, můžete jako hodnotu zdrojového vzoru zadat lomítko (/).

V kontextu akce přepsání adresy URL se pro zdrojový vzor bere v úvahu pouze cesta za vzory odpovídajícími v konfiguraci trasy. Sada pravidel například považuje za zdrojový vzor, který se má přepsat, /source-pattern pokud máte formát contoso.com/pattern-to-match/source-patternpříchozí adresy URL . Po přepsání adresy URL bude contoso.com/pattern-to-match/destinationformát odchozí adresy URL .

V případech, kdy potřebujete odebrat /pattern-to-match segment adresy URL, můžete nastavit cestu původu pro skupinu původu v konfiguraci trasy na /.

Cíl

Cílová cesta představuje cestu, která nahrazuje zdrojový vzor. Pokud je například cesta contoso.com/foo/1.jpgurl požadavku a zdrojový vzor je /foo/, určuje cíl jako /bar/ výsledky v obsahu, který se obsluhuje z contoso.com/bar/1.jpg původu.

Zachování chybějící cesty

Zachování chybějící cesty umožňuje řídit, jak se zbývající cesta po zpracování zdrojového vzoru zpracuje. Nastavením zachování chybějící cesty na Ano se zbývající cesta připojí k nové cestě. Na druhou stranu nastavení na Hodnotu Ne (výchozí) odebere zbývající cestu za zdrojovým vzorem.

Tady je příklad ukazující chování zachování chybějící cesty:

Zachování chybějící cesty Vzor zdroje Cíl Příchozí požadavek Obsah obsloužený z původu
Ano / /Foo/ contoso.com/sub/1.jpg /foo/sub/1.jpg
Ano /pod/ /Foo/ contoso.com/sub/image/1.jpg /foo/image/1.jpg
No /pod/ /foo/2.jpg contoso.com/sub/image/1.jpg /foo/2.jpg

Důležité

Služba Azure Front Door (Classic) bude vyřazena 31. března 2027. Abyste se vyhnuli přerušení služeb, je důležité do března 2027 migrovat profily služby Azure Front Door (Classic) na úroveň Azure Front Door Standard nebo Premium. Další informace najdete v části Vyřazení služby Azure Front Door (Classic).

Azure Front Door (Classic) poskytuje podporu přepsání adresy URL konfigurací vlastní cesty přesměrování při nastavování pravidla typu přesměrování přesměrování. Pokud je definováno pouze lomítko (/*), služba Front Door ve výchozím nastavení replikuje cestu příchozí adresy URL v předávané žádosti. Hlavička hostitele použitá v předávané žádosti je založená na konfiguraci vybraného back-endu. Podrobnější informace najdete v dokumentaci hlavičky hostitele back-endu.

Klíčovým aspektem přepsání adresy URL je možnost kopírovat všechny odpovídající části příchozí cesty do předávané cesty při použití vlastní cesty předávání se zástupnými čarami. Následující tabulka ukazuje příklad příchozího požadavku a odpovídající předávané cesty při použití vlastní cesty /fwd/přesměrování . Oddíl označený jako a/b/c představuje část, která nahrazuje shodu se zástupnými znamény.

Cesta příchozí adresy URL Shoda cesty Vlastní cesta přesměrování Přesměrovaná cesta
/foo/a/b/c /Foo/* /Fwd/ /fwd/a/b/c

Příklad přepsání adresy URL

Zvažte pravidlo směrování s následující kombinací hostitelů a cest front-endu, které jsou nakonfigurované:

Hostitelé Cesty
www.contoso.com /*
/Foo
/Foo/*
/foo/bar/*

Následující tabulka znázorňuje příklady příchozích požadavků a odpovídajících nejvíce specifických odpovídajících odpovídajících tras. Poskytuje také příklady vlastních cest předávání a výsledných přesměrovaných cest.

Představte si například druhý řádek tabulky. Pokud je www.contoso.com/subpříchozí požadavek a vlastní cesta přesměrování je nastavena na /, pak by přesměrovaná cesta byla /sub. Pokud je však vlastní cesta předávání nastavena na /fwd/, pak by přesměrovaná cesta byla /fwd/sub. Zvýrazněné části cest označují části, které jsou součástí shody se zástupnými znaménky.

Příchozí požadavek Cesta shody pro většinu konkrétních hodnot / /Fwd/ /Foo/ /foo/bar/
www.contoso.com/ /* / /Fwd/ /Foo/ /foo/bar/
www.contoso.com/ sub /* /pod /fwd/sub /foo/sub /foo/bar/sub
www.contoso.com/ a/b/c /* /a/b/c /fwd/a/b/c /foo/a/b/c /foo/bar/a/b/c
www.contoso.com/foo /Foo / /Fwd/ /Foo/ /foo/bar/
www.contoso.com/foo/ /Foo/* / /Fwd/ /Foo/ /foo/bar/
www.contoso.com/foo/ bar /Foo/* /bar /fwd/bar /foo/bar /foo/bar/bar

Poznámka:

Azure Front Door (Classic) podporuje přepis adres URL jenom ze statické cesty na jinou statickou cestu. Zachování chybějící cesty je podporováno ve službě Azure Front Door Standard a Premium. Další informace naleznete v tématu Zachování chybějící cesty.

Volitelná nastavení

Konfigurace mezipaměti – Pokud je zakázaná nebo nezadaná, požadavky, které odpovídají tomuto pravidlu směrování, se nepokouší použít obsah uložený v mezipaměti a místo toho se vždy načítají z back-endu. Další informace najdete v tématu Ukládání do mezipaměti se službou Azure Front Door.

Další kroky