Herschrijf regels binnen IIS: Patroon en condities header image

Herschrijf regels binnen IIS: Patroon en condities

maandag 28 juni 2021 ·Leestijd: 2 minuten
contacteer auteur:

 

In mijn vorige blog werden server variabelen besproken. In deze blog zal ik het hebben over:

1. Patroon: Het patroon wordt gebruikt om een reguliere expressie of een wildcard patroon op te geven welke gebruikt wordt om een URL op te matchen.

2. Conditie: Voorwaarden om aanvullende bewerkingen uit te voeren: als een verzoek header X bevat, doe dan Y.

Voor het aanmaken van een herschrijf regel kun je gebruik maken van bestaand templates voor zowel uitgaande als inkomende herschrijf regels. Voor nu zullen we gebruik maken van het template ´Blank rule´ zodat we zelf alles kunnen instellen.

Voor het aanmaken van een regel zijn er 4 onderdelen waarmee je kunt werken:

  1. Patroon (aan welke eisen met een verzoek voldoen om de regel op toe te passen)
  2. Conditie (zo kun je een verzoek van een bepaalde host afvangen)
  3. Server variabelen
  4. Actie

Regels

Binnen een regel kun je aangeven aan welke voorwaarde een URL moet voldoen of juist niet moet voldoen om de regel op toe te passen. Je kunt hierbinnen gebruik maken van een reguliere expressie, een exacte match of een wildcard. De query string wordt niet meegenomen binnen deze regel, mocht je hier wel op willen checken dan kun je dit doen binnen een conditie.
Een vaak gebruikte reguliere expressie is het volgende patroon: (.*). Dit patroon zal elk teken afvangen dus elke URL zal voldoen aan deze regel. Een ander voorbeeld van een patroon kan zijn: .*\.(gif|jpg|png)$. Hier vang je aanvragen af die een afbeelding aanvragen. Dit ziet er als volgt uit:
patroon.jpg

Ook kun je binnen IIS je patroon testen om te zien of je patroon inderdaad afvangt wat je wilt afvangen:
test patroon.jpg

Conditie

Een conditie wordt gebruikt om aanvullende condities op te stellen waaraan een verzoek moet voldoen als een URL overeenkomt met het aangeven regelpatroon. Deze condities zullen alleen geëvalueerd worden als een URL voldoet aan het patroon wat in de regel is opgegeven.
Er kunnen meerdere condities worden opgegeven waaraan een verzoek moet voldoen. Het is mogelijk om aan te geven of een verzoek aan alle condities moet voldoen of aan maar één van de condities om verder verwerkt te worden. Bij het opgeven van de conditie kun je de volgende opties gebruiken:

  1. Conditie input: dit is de waarde wat geëvalueerd gaat worden of de conditie van toepassing is of niet. Dit kan de query string zijn (QUERY_STRING) of de host van het verzoek (HTTP_HOST)
  2. Match type: hierin geef je de logische voorwaarde op:
    1. IsFile/IsNotaFile: hier wordt gekeken of de conditie input een pad naar een bestand bevat of juist niet
    2. IsDirectory/IsNotaDirectory: hier wordt gekeken of de conditie input een pad naar een map bevat of juist niet
    3. MatchesPatern/DoesNotMatchPatern: hierbinnen wordt de conditie input vergeleken met een regulieren expressie om te bepalen of deze aan de conditie voldoet of juist niet

Binnen een conditie kun je bijvoorbeeld controleren of een verzoek vanuit een bepaalde host afkomstig is:
conditie.jpg

En ook deze kun je weer testen:

test conditie.jpg


Voor meer informatie over IIS herscrhijfregels:

  1. https://docs.microsoft.com/en-us/iis/extensions/url-rewrite-module/url-rewrite-module-configuration-reference

 


Andere blogartikelen

Integraties met API's van verschillende partijen
Geschreven door
op donderdag 30 juni 2022
Bij Sigma Solutions maken wij integraties met verschillende partijen, die ervoor zorgen dat jouw bedrijfsproces geautomatiseerd en gedigitaliseerd kan worden. We zijn constant op zoek naar passende oplossingen voor onze klanten.
Wat is B2B Online Advertising?
Geschreven door
op donderdag 30 juni 2022
B2B Online Advertising is een marketingstrategie die bedoeld is om een zakelijke boodschap over te brengen aan andere bedrijven door middel van advertenties.
Als traditioneel bedrijf succesvol blijven in een tijdperk van digitalisering
Geschreven door
op donderdag 30 juni 2022
Wil je als traditioneel bedrijf succesvol blijven in een tijdperk van 'digital natives'? Lees dan deze blogpost!
Open Nieuwsbrief Inschrijving Footer

E-book

Zo wordt uw website een lead generator 
In 3 stappen uw website van visitekaartje naar salesfunnel

Download het E-book â€º