Vi vil forklare Nginx location regex-eksempler i detalj i denne artikkelen.
Forutsetninger
Det antas i denne artikkelen at Nginx allerede er installert på systemet ditt.
Syntaks for Nginx-lokasjonsdirektiv
Følgende syntaks er tilgjengelig for posisjonskatalogen i Nginx-konfigurasjonsfilen:
location [modifier] [URL-match]..
Nginx-lokaliseringsblokken kan legges til i en serverblokk eller på et annet sted med noen forhåndsdefinerte forhold. I syntaksen ovenfor er modifikatoren en valgfri parameter. Tilstedeværelsen av modifikatorer i stedsblokken lar Nginx håndtere en URL i en annen rekkefølge. Her er noen modifikatorer nevnt nedenfor med noen eksempler:
1. Matcher alle forespørsler med Nginx lokasjonsblokk
'/' Brukes som prefiksplassering for å matche alle forespørsler. Imidlertid, hvis det ikke blir søkt etter noen beste treff, vil den brukes som et siste resultat.
Eksempel
I følgende stedsblokk vil den samsvare med alle forespørsler:
2. Match katalogen ved hjelp av stedsblokk i Nginx
Følgende eksempel vil matche enhver forespørsel i stedsblokken som begynner med / images /. Derfor søker du etter en mer spesifikk matchet blokk mot den forespurte URI. Imidlertid, hvis Nginx ikke søker etter et mer spesifikt samsvar, vil plasseringsblokken bli valgt direkte.
Eksempel
I eksemplet nedenfor vil Nginx matche enhver forespørsel i stedsblokken som begynner med / images /.
3. Nøyaktig samsvar med '=' (lik) endringssted
Modifikatoren '=' likhetstegn brukes når du nøyaktig matcher stedsblokken med en ønsket URI.
Eksempel
Nginx prøver først å matche de mest spesifikke prefiksstedene. I det følgende eksemplet vil modifikatoren '=' i stedsblokken imidlertid nøyaktig matche den forespurte prefiksbanen og deretter slutte å søke etter bedre treff.
..
I det ovennevnte stedblokkeksemplet vil '=' plasseringsmodifisereren nøyaktig samsvare med URL-domenet mitt.com / bilder. URL-ene 'mydomain / imgs / index.html 'eller' mydomain / imgs / 'samsvarer ikke med tilstanden.
4. Skift mellom store og små bokstaver Regex samsvarer med Tilda (~) modifikator
Tilda (~) modifikatoren utfører saksfølsom søk etter regulært uttrykk mot den forespurte URI og søker kontinuerlig etter en bedre samsvar.
Eksempel
~ Modifisereren i det følgende eksemplet utfører store og små bokstaver i regeks (regulært uttrykk) i stedsblokken:
..
5. Saksfølsom samsvar med tilda (~ *) modifikator
Tilde-skiltet med en stjerne (~ *) modifikator samsvarer med alle (store og små bokstaver) forespørsler i neste plasseringsblokk som slutter med et bestemt filformat, for eksempel fil som slutter med png, gif, ico, jpeg, jpg, css eller js. Imidlertid vil alle forespørsler som sendes til / imgs / mappen underholdes av forrige stedsblokk.
Eksempel
I den følgende plasseringsblokken vil den matche alle store og små bokstaver.
..
6. Caret-Tilde Sign (^ ~) modifikator for RegEx Match
Modifikatoren caret-tilda (^ ~) brukes til å utføre samsvar mellom store og små bokstaver for vanlig uttrykk mot den forespurte URL-en. Derfor, hvis den matchende URI vil bli matchet i / imgs eller / imgs / pico.png, den slutter å søke for å finne en bedre kamp.
plassering ^ ~ / imgs..
Konklusjon
Vi har diskutert noen få eksempler og viktige detaljer om Nginx-lokasjonsdirektivet med regex. Vi har også nevnt bruken av modifikatorer med eksempler i denne artikkelen. Jeg håper denne artikkelen vil hjelpe deg med å forstå hovedkonseptet med lokasjonsblokkene i NGINX. Takk!