Så här matchas begäranden mot en routningskonfiguration

En väg i Azure Front Door definierar hur trafiken hanteras när den inkommande begäran kommer till Azure Front Door-gränsen. Via routningsinställningarna definieras en association mellan en domän och en ursprungsgrupp. Genom att använda avancerade funktioner som Mönster att matcha och Regeluppsättningar kan du ha detaljerad kontroll över trafiken till dina serverdelsresurser.

Kommentar

När du använder Front Door-regeluppsättningarna kan du konfigurera en regel för att åsidosätta ursprungsgruppen för en begäran. Ursprungsgruppen som anges av regeluppsättningen åsidosätter routningsprocessen som beskrivs i den här artikeln.

Viktigt!

Azure Front Door (klassisk) dras tillbaka den 31 mars 2027. För att undvika avbrott i tjänsten är det viktigt att du migrerar dina Azure Front Door-profiler (klassiska) till Azure Front Door Standard- eller Premium-nivån senast i mars 2027. Mer information finns i Azure Front Door (klassisk) tillbakadragning.

När en begäran anländer till Gränsen för Azure Front Door (klassisk) är en av de första sakerna som Front Door gör att bestämma hur matchande begäran ska dirigeras till en serverdelsresurs och sedan vidta en definierad åtgärd i routningskonfigurationen. I följande dokument beskrivs hur Front Door avgör vilken routningskonfiguration som ska användas vid bearbetning av en begäran.

Struktur för en Front Door-routningskonfiguration

En Front Door-routningsregel består av två huvuddelar, "vänster sida" och "höger sida". Front Door matchar den inkommande begäran till vänster om vägen medan den högra sidan definierar hur begäran bearbetas.

Inkommande matchning (vänster sida)

Följande egenskaper avgör om den inkommande begäran matchar routningsregeln (eller vänster sida):

  • HTTP-protokoll – HTTP eller HTTPS
  • Domän – till exempel: www.foo.com, *.bar.com
  • Sökvägar – till exempel: /*, /users/*, /file.gif

Dessa egenskaper expanderas internt så att varje kombination av Protokoll/Domän/Sökväg är en potentiell matchningsuppsättning.

Routningsbeslut (höger sida)

Beslutet om hur begäran ska bearbetas beror på om cachelagring är aktiverat för vägen. Om ett cachelagrat svar inte är tillgängligt vidarebefordras begäran till lämpligt ursprung.

Vägmatchning

Det här avsnittet fokuserar på hur Front Door matchar en routningsregel. Det grundläggande konceptet är att Front Door alltid matchar den mest specifika begäran och bara tittar på "vänster sida". Front Door matchar först baserat på protokoll, sedan domän och sista sökvägen.

Matchning av klientdelsvärd

Azure Front Door använder följande logik för att matcha klientdelsvärdar:

  1. Kontrollera om det finns några vägar med en exakt matchning på klientdelsvärden.
  2. Om det inte finns någon exakt klientdelsvärdmatchning avvisas begäran och felet 400: Felaktig begäran skickas.

Följande tabeller visar tre olika routningsregler med klientdelsvärd och sökvägar:

Routingregeln Klientdelsvärdar Sökväg
A foo.contoso.com /*
F foo.contoso.com /Användare/*
C www.fabrikam.com, foo.adventure-works.com /*/Bilder/*

I följande tabell visas matchande resultat för ovanstående routningsregler:

Inkommande klientdelsvärd Matchade routningsregel(er)
foo.contoso.com A, B
www.fabrikam.com C
images.fabrikam.com Fel 400: Felaktig begäran
foo.adventure-works.com C
contoso.com Fel 400: Felaktig begäran
www.adventure-works.com Fel 400: Felaktig begäran
www.northwindtraders.com Fel 400: Felaktig begäran

Sökvägsmatchning

När Front Door har fastställt den specifika klientdelsvärden och filtren för möjliga routningsregler väljer Front Door sedan routningsreglerna baserat på begärandesökvägen. En liknande logik som klientdelsvärdar används för att matcha begärandesökvägen:

  1. Kontrollera om det finns några routningsregler med en exakt matchning till begärandesökvägen.
  2. Om det inte finns någon exakt matchande sökväg letar Front Door efter en routningsregel med en sökväg med jokertecken som matchar.
  3. Om det inte finns några routningsregler som hittas med en matchande sökväg avvisas begäran och felet 400: Felaktig begäran skickas.

Kommentar

Jokertecknet * är endast giltigt för sökvägar som inte har några andra tecken efter sig. Jokertecknet * måste dessutom föregås av ett snedstreck /. Sökvägar utan jokertecken anses vara exakta matchningsvägar. En sökväg som slutar med ett snedstreck / är också en exakt matchningssökväg. Se till att dina sökvägar följer dessa regler för att undvika eventuella fel.

Kommentar

  • Alla sökvägar utan jokertecken anses vara exakta matchningssökvägar. Om en sökväg slutar i en /anses detta vara en exakt matchning.
  • Mönster som matchar sökvägar är skiftlägesokänsliga, vilket innebär att sökvägar med olika höljen behandlas som dubbletter. Du har till exempel samma värd som använder samma protokoll med sökvägar /FOO och /foo. Dessa sökvägar betraktas som dubbletter som inte tillåts i inställningen Mönster att matcha.

Följande tabell är en lista över routningsregler, klientdelsvärd och sökvägskombination:

Routingregeln Klientdelsvärd Sökväg
A www.contoso.com /
F www.contoso.com /*
C www.contoso.com /Ab
D www.contoso.com /Abc
E www.contoso.com /Abc/
F www.contoso.com /Abc/*
G www.contoso.com /abc/def
H www.contoso.com /Sökvägen/

I följande tabell visas vilken routningsregel som den inkommande begäran matchas med när den anländer till Front Door-gränsen:

Inkommande begäran Matchad väg
www.contoso.com/ A
www.contoso.com/a F
www.contoso.com/ab C
www.contoso.com/abc D
www.contoso.com/abzzz F
www.contoso.com/abc/ E
www.contoso.com/abc/d F
www.contoso.com/abc/def G
www.contoso.com/abc/defzzz F
www.contoso.com/abc/def/ghi F
www.contoso.com/path F
www.contoso.com/path/ H
www.contoso.com/path/zzz F

Varning

Om det inte finns några routningsregler för en klientdelsvärd med exakt matchning med en sökväg (/*catch-all) kommer det inte att finnas någon matchning till någon routningsregel.

Exempelkonfiguration:

Flöde Host Sökväg
A profile.contoso.com /Api/*

Matchande tabell:

Inkommande begäran Matchad väg
profile.domain.com/other Inga. Fel 400: Felaktig begäran

Routningsbeslut

När Front Door har matchats med en enda routningsregel måste den välja hur begäran ska bearbetas. Om Din Azure Front Door har ett cachelagrat svar tillgängligt för den matchade routningsregeln, hanteras begäran tillbaka till klienten.

Slutligen utvärderar Azure Front Door om du har en regeluppsättning konfigurerad för den matchade routningsregeln eller inte. Om ingen regeluppsättning definieras vidarebefordras begäran till ursprungsgruppen utan några ändringar. Annars bearbetas regeluppsättningarna i den ordning som konfigureras. Regeluppsättningar kan åsidosätta en väg genom att tvinga trafik till en specifik ursprungsgrupp.

Om Front Door (klassisk) inte har ett cachelagrat svar för den matchade routningsregeln utvärderas om URL-omskrivning har konfigurerats för den matchade routningsregeln. Om det inte finns någon anpassad vidarebefordrans sökväg vidarebefordras begäran till lämplig serverdel i den konfigurerade serverdelspoolen utan ändringar. Om en anpassad vidarebefordran har definierats uppdateras sökvägen för begäran enligt definitionen i den anpassade vidarebefordran och vidarebefordras sedan till serverdelen.

Nästa steg