Nginx

Nginx-sijainnin regex-esimerkkejä

Nginx-sijainnin regex-esimerkkejä
Nginx Location -direktiivi sallii reitittää pyynnöt tiettyyn paikkaan tiedostojärjestelmässä. Kun Nginx täsmää tai etsii sijaintilohkoa pyydettyyn URL-osoitteeseen nähden, paikannusdirektiivi kertoo Nginxille, mistä etsiä tietyn polun sisällyttämällä kaikki tiedostot ja hakemistot.

Selitämme Nginx-sijainnin regex-esimerkkejä lyhyesti tässä artikkelissa.

Edellytykset

Tässä artikkelissa oletetaan, että Nginx on jo asennettu järjestelmääsi.

Nginx-sijaintidirektiivin syntakse

Seuraava syntaksi on käytettävissä Nginx-määritystiedoston sijaintihakemistossa:

sijainti [muokkaaja] [URL-haku]

Nginx-sijaintilohko voidaan lisätä palvelinlohkoon tai toiseen paikkaan joillakin ennalta määritellyillä ehdoilla. Edellä olevassa syntaksissa muokkaaja on valinnainen parametri. Muuttujien läsnäolo sijaintilohkossa antaa Nginxille mahdollisuuden käsitellä URL-osoitetta eri järjestyksessä. Tässä muutamia muokkaajia mainitaan alla ja joitain esimerkkejä:

1. Kaikkien pyyntöjen sovittaminen Nginx-sijaintilohkoon

'/' Käytetään etuliitteen sijaintiin vastaamaan kaikkia pyyntöjä. Jos kuitenkin parhaita vastaavuuksia ei haeta, sitä käytetään viimeisenä tuloksena.

Esimerkki
Seuraavassa sijaintilohkossa se vastaa kaikkia pyyntöjä:

sijainti /

2. Hakuhakemisto käyttämällä sijaintilohkoa Nginxissä

Seuraava esimerkki vastaa kaikkia sijaintilohkon pyyntöjä, jotka alkavat / images /. Näin ollen tarkemman sovitetun lohkon etsiminen pyydettyä URI: tä vastaan. Jos Nginx ei kuitenkaan etsi tarkempaa vastaavuutta, sijaintilohko valitaan suoraan.

Esimerkki
Alla olevassa esimerkissä Nginx vastaa kaikkia sijaintilohkon pyyntöjä, jotka alkavat / images /.

sijainti / kuvat /

3. Täsmää täsmälleen käyttämällä '=' (yhtä suuri) sijainninmuuttajaa

Muunnosta '=' yhtäläisyysmerkkiä käytetään, kun sovitat sijaintilohkon tarkalleen pyydettyyn URI: hen.

Esimerkki
Nginx yrittää ensin löytää tarkimmat etuliitteiden sijainnit. Seuraavassa esimerkissä sijaintilohkon muuttuja '=' vastaa kuitenkin tarkasti pyydettyä etuliitteen polkua ja lopettaa sitten parempien vastaavuuksien etsimisen.

sijainti = / imgs

Edellä mainitussa sijaintilohkon esimerkissä '=' sijainnin muokkaaja vastaa tarkalleen URL-osoitetunnusta.fi / kuvat. URL-osoitteiden mydomain / imgs / index.html tai 'mydomain / imgs /' eivät vastaa ehtoa.

4. Kirjainkokoinen Regex-ottelu käyttämällä Tilda (~) -muunnostajaa

Tilda (~) -muunnin suorittaa kirjainkokoisen säännöllisen lausekkeen haun haettua URI: tä vastaan ​​ja etsii jatkuvasti parempaa vastaavuutta.

Esimerkki
Seuraavassa esimerkissä oleva ~ modifikaattori suorittaa kirjainkokoisen regex (säännöllinen lauseke) -hakemuksen sijaintilohkossa:

sijainti ~ / imgs

5. Kirjainkoon erottamaton ottelu käyttämällä tilda (~ *) -muunnostajaa

Tähtimerkillä (~ *) varustettu tilde-merkki vastaa mitä tahansa seuraavassa sijaintilohkossa olevaa (kirjainkoon erottamatonta) pyyntöä, joka päättyy tietyllä tiedostomuodolla, kuten tiedosto, joka päättyy png, gif, ico, jpeg, jpg, css tai js. Kaikki / imgs / kansioon lähetetyt pyynnöt viihdytetään kuitenkin edellisen sijaintilohkon avulla.

Esimerkki
Seuraavassa sijaintilohkossa se täyttää kaikki kirjainkoolla merkitsevät tiedostotyypit.

sijainti ~ * .(png | ico | gif | jpg | jpeg | css | js) $

6. Caret-Tilde Sign (^ ~) -muunnin RegEx Matchille

Muokattajaa caret-tilda (^ ~) käytetään suorittamaan isot ja pienet kirjaimet säännöllisen lausekkeen haulla URL-osoitteen kanssa. Siksi, jos vastaava URI sovitetaan / imgs tai / imgs / pico.png, se lopettaa etsinnän löytääksesi paremman ottelun.

sijainti ^ ~ / imgs

Johtopäätös

Olemme keskustelleet muutamasta esimerkistä ja tärkeistä yksityiskohdista Nginx-sijaintidirektiivistä regexin kanssa. Olemme myös maininneet muokkaajien käytön esimerkkien avulla tässä artikkelissa. Toivon tämän artikkelin auttavan sinua ymmärtämään NGINX: n sijaintilohkojen pääkäsitteen. Kiitos!

How to Change Mouse and Touchpad Settings Using Xinput in Linux
Most Linux distributions ship with “libinput” library by default to handle input events on a system. It can process input events on both Wayland and X...
Remap your mouse buttons differently for different software with X-Mouse Button Control
Maybe you need a tool that could make your mouse's control change with every application that you use. If this is the case, you can try out an applica...
Microsoft Sculpt Touch Wireless Mouse Review
I recently read about the Microsoft Sculpt Touch wireless mouse and decided to buy it. After using it for a while, I decided to share my experience wi...