Hoe aanvragen worden gekoppeld aan een routeconfiguratie

Een route in Azure Front Door definieert hoe verkeer wordt verwerkt wanneer een binnenkomende aanvraag binnenkomt aan de Rand van Azure Front Door. Met de route-instellingen wordt een koppeling tot stand gebracht tussen een domein en een oorspronkelijke groep. Door geavanceerde functies zoals Pattern to Match en Rule sets te gebruiken, kunt u gedetailleerde controle hebben over verkeer naar uw back-endresources.

Notitie

Wanneer u de Front Door-regelsets gebruikt, kunt u een regel configureren om voor een aanvraag de oorspronkelijke groep te overschrijven. De oorspronkelijke groep die door de regelset is ingesteld, overschrijft het routeringsproces dat in dit artikel wordt beschreven.

Belangrijk

Azure Front Door (klassiek) gaat met pensioen op 31 maart 2027. Omdat de dienst met pensioen gaat, ondersteunt hij geen profielaanmaak, onboarding van nieuwe domeinen of beheerde certificaten meer. Om serviceonderbreking te voorkomen, migreren naar Azure Front Door Standard of Premium. Zie Azure Front Door (klassiek) buitengebruikstelling voor meer informatie.

Wanneer een verzoek binnenkomt bij de Azure Front Door (klassieke edge), is een van de eerste stappen om te bepalen hoe het overeenkomende verzoek naar een back-end resource moet worden gerouteerd, en vervolgens een gedefinieerde actie uit te voeren in de routeringsconfiguratie. In dit document wordt uitgelegd hoe Front Door bepaalt welke routeconfiguratie moet worden gebruikt bij het verwerken van een aanvraag.

Structuur van een Front Door-routeconfiguratie

Een Front Door-routeringsregel bestaat uit twee belangrijke onderdelen: de 'linkerzijde' en de 'rechterzijde'. Front Door koppelt de binnenkomende aanvraag aan de linkerkant van de route, terwijl aan de rechterkant wordt bepaald hoe de aanvraag wordt verwerkt.

Binnenkomende wedstrijd (linkerzijde)

De volgende eigenschappen bepalen of de binnenkomende aanvraag overeenkomt met de routeringsregel (aan de linkerkant):

  • HTTP-protocollen - HTTP of HTTPS
  • Domein - bijvoorbeeld: www.foo.com, *.bar.com
  • Paden - bijvoorbeeld: /*, /users/*, /file.gif

Deze eigenschappen worden intern uitgebreid, zodat iedere combinatie van Protocol, Domein en Pad een mogelijke set met overeenkomsten vormt.

Routeringsbeslissing (rechterkant)

De beslissing over het verwerken van de aanvraag is afhankelijk van of caching is ingeschakeld voor de route. Als een antwoord in de cache niet beschikbaar is, wordt de aanvraag doorgestuurd naar de juiste oorsprong.

Routevergelijking

In deze sectie wordt uitgelegd hoe Front Door aanvragen met routeringsregels koppelt. Het basisprincipe is dat Front Door altijd overeenkomt met de meest specifieke aanvraag door de eigenschappen aan de linkerkant te evalueren: protocol, domein en pad, in die volgorde.

Overeenkomende frontendhost

Azure Front Door gebruikt de volgende stappen om front-endhosts te vinden:

  1. Controleer op routes met een exacte overeenkomst op de front-end-host.
  2. Als er geen exacte overeenkomst wordt gevonden, wordt de aanvraag geweigerd met een fout 404: Ongeldige aanvraag.

De volgende tabellen illustreren drie verschillende routeringsregels met hun front-endhosts en -paden:

Routeringsregel Front-endhosts Pad
Een foo.contoso.com /*
B foo.contoso.com /Gebruikers/*
C www.fabrikam.com, foo.adventure-works.com /*/beelden/*

In de volgende tabel ziet u de overeenkomende resultaten voor de routeringsregels in de vorige tabel:

Binnenkomende frontendhost Routeringsregels die overeenkomen
foo.contoso.com A, B
www.fabrikam.com C
images.fabrikam.com Fout 404: Ongeldige aanvraag
foo.adventure-works.com C
contoso.com Fout 404: Ongeldige aanvraag
www.adventure-works.com Fout 404: Ongeldige aanvraag
www.northwindtraders.com Fout 404: Ongeldige aanvraag

Padkoppeling

Nadat Azure Front Door de specifieke front-endhost bepaalt en mogelijke routeringsregels filtert, worden de routeringsregels geselecteerd op basis van het aanvraagpad. De service maakt gebruik van de volgende logica:

  1. Controleer op routeringsregels met een exacte overeenkomst met het aanvraagpad.
  2. Als er geen exacte overeenkomst wordt gevonden, zoek dan naar een routeringsregel met een pad met wildcards dat overeenkomt.
  3. Als er geen overeenkomend pad wordt gevonden, negeert u de aanvraag met een fout 404: Ongeldige aanvraag.

Notitie

Het jokerteken * is alleen geldig voor paden die erna geen andere tekens hebben. Daarnaast moet het jokerteken * worden voorafgegaan door een slash /. Paden zonder jokertekens worden beschouwd als paden die exact overeenkomen. Een pad dat eindigt op een slash / , is ook een exact-match-pad. Zorg ervoor dat uw paden deze regels volgen om fouten te voorkomen.

Notitie

  • Paden zonder jokertekens worden beschouwd als paden die exact overeenkomen. Een pad dat eindigt op een / , is ook een exacte overeenkomst.
  • Padpatronen zijn niet hoofdlettergevoelig. Bijvoorbeeld, /FOO en /foo worden behandeld als duplicaten en zijn niet toegestaan in de instelling 'Patronen om te matchen'.

De volgende tabel bevat routeringsregels met de combinaties van de frontend-host en het pad.

Routeringsregel Frontend-host Pad
Een www.contoso.com /
B 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 /pad/

In de volgende tabel ziet u welke regel voor doorsturen overeenkomt met een binnenkomende aanvraag aan de rand van Azure Front Door:

Binnenkomende aanvraag Overeenkomende route
www.contoso.com/ Een
www.contoso.com/a B
www.contoso.com/ab C
www.contoso.com/abc D
www.contoso.com/abzzz B
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 B
www.contoso.com/path/ H
www.contoso.com/path/zzz B

Waarschuwing

Als er geen routeringsregels zijn voor een exact-match front-endhost zonder een catch-all routepad (/*), wordt er geen routeringsregel vergeleken.

Voorbeeldconfiguratie:

Route Gastheer Pad
Een profile.contoso.com /Api/*

Overeenkomende tabel:

Binnenkomende aanvraag Overeenkomende route
profile.domain.com/other Geen. Fout 404: Ongeldige aanvraag

Routeringsbeslissing

Zodra Azure Front Door overeenkomt met een routeringsregel, wordt bepaald hoe de aanvraag moet worden verwerkt. Als er een antwoord in de cache beschikbaar is, wordt dat antwoord teruggestuurd naar de client.

Als u een regelset configureert voor de overeenkomende routeringsregel, verwerkt Azure Front Door deze op volgorde. Regelsets kunnen een route overschrijven door verkeer naar een specifieke oorspronkelijke groep te leiden. Als u geen regelset definieert, Azure Front Door de aanvraag zonder wijzigingen doorsturen naar de oorspronkelijke groep.

Als Azure Front Door (klassiek) geen antwoord in de cache heeft, wordt gecontroleerd op een configuratie voor het herschrijven van url's. Als u geen aangepast doorstuurpad definieert, stuurt Azure Front Door de aanvraag door naar de juiste back-end in de geconfigureerde back-endpool. Als u een aangepast doorstuurpad definieert, wordt het aanvraagpad door Azure Front Door dienovereenkomstig bijgewerkt en vervolgens doorgestuurd naar de back-end.

Volgende stappen