Nginx

Exemple de regex de locație Nginx

Exemple de regex de locație Nginx
Directiva Nginx Location permite solicitările de rutare către o anumită locație din sistemul de fișiere. În timp ce Nginx se potrivește sau caută un bloc de locație cu adresa URL solicitată, directiva de localizare îi spune lui Nginx unde să caute o anumită cale, incluzând toate fișierele și directoarele.

Vom explica exemplele de regex de localizare Nginx în scurt detaliu în acest articol.

Condiții prealabile

În acest articol se presupune că Nginx este deja instalat pe sistemul dvs.

Sintaxa directivei de localizare Nginx

Următoarea sintaxă este disponibilă pentru directorul de locație din fișierul de configurare Nginx:

locație [modificator] [potrivire URL]
..

Blocul de locație Nginx poate fi adăugat într-un bloc de server sau într-o altă locație cu anumite condiții predefinite. În sintaxa de mai sus, modificatorul este un parametru opțional. Prezența modificatorilor în blocul de locație permite Nginx să se ocupe de o adresă URL într-o ordine diferită. Aici, puțini modificatori sunt menționați mai jos, cu câteva exemple:

1. Potrivirea tuturor cererilor cu blocul de locație Nginx

„/” Este utilizat pentru locația prefixului pentru a se potrivi tuturor cererilor. Cu toate acestea, dacă nu se caută cele mai bune potriviri, atunci va fi folosit ca ultim rezultat.

Exemplu
În următorul bloc de locație, se va potrivi cu toate cererile:

Locație /

2. Adaptați directorul utilizând blocul de locație din Nginx

Următorul exemplu se va potrivi cu orice solicitare din blocul de locație care începe cu / images /. În consecință, căutarea unui bloc mai specific asociat cu URI-ul solicitat. Cu toate acestea, dacă Nginx nu caută o potrivire mai specifică, blocul de locație va fi selectat direct.

Exemplu
În exemplul de mai jos, Nginx va potrivi orice cerere din blocul de locație care începe cu / images /.

locație / imagini /

3. Potriviți exact folosind modificatorul de locație '=' (egal cu)

Modificatorul '=' semnul egal este utilizat atunci când potriviți exact blocul de locație cu un URI solicitat.

Exemplu
Nginx încearcă mai întâi să se potrivească cu cele mai specifice locații ale prefixului. Cu toate acestea, în exemplul următor, modificatorul „=” din blocul de locație se va potrivi exact cu calea de prefix solicitată și apoi nu va mai căuta potriviri mai bune.

location = / imgs
..

În exemplul de bloc de locație menționat mai sus, modificatorul de locație '=' se va potrivi exact cu URL-ul mydomain.com / imgs. Adrese URL mydomain / imgs / index.html 'sau' mydomain / imgs / 'nu se vor potrivi condiției.

4. Potrivirea Regex între majuscule și minuscule utilizând modificatorul Tilda (~)

Modificatorul tilda (~) efectuează căutarea de potrivire a expresiei regulate, sensibile la majuscule, împotriva URI-ului solicitat și caută continuu o potrivire mai bună.

Exemplu
Modificatorul ~ din exemplul următor efectuează potrivirea regex (expresie regulată) diferențiată de majuscule și minuscule în blocul de locație:

locație ~ / imgs
..

5. Potrivire insensibilă la majuscule și minuscule folosind modificatorul tilda (~ *)

Semnul tilde cu un modificator asterisc (~ *) se potrivește oricărei cereri (care nu disting majuscule / minuscule) din următorul bloc de locație care se termină cu un format de fișier specific, cum ar fi fișierul care se termină cu png, gif, ico, jpeg, jpg, css sau js. Cu toate acestea, orice solicitare care se trimite în folderul / imgs / va fi distrată de blocul de locație anterior.

Exemplu
În următorul bloc de locație, acesta se va potrivi cu toate tipurile de fișiere care nu disting majusculele și minusculele.

locație ~ * .(png | ico | gif | jpg | jpeg | css | js) $
..

6. Modificator Caret-Tilde Sign (^ ~) pentru RegEx Match

Modificatorul caret-tilda (^ ~) este folosit pentru a efectua potrivirea expresiei regulate cu sensibilitate la majuscule și minuscule cu adresa URL solicitată. Prin urmare, dacă URI-ul care se potrivește va fi asociat în / imgs sau / imgs / pico.png, nu mai caută pentru a găsi o potrivire mai bună.

locație ^ ~ / imgs
..

Concluzie

Am discutat câteva exemple și detalii importante despre directiva de localizare Nginx cu regex. De asemenea, am menționat utilizarea modificatorilor cu exemple în acest articol. Sper că acest articol vă va ajuta să înțelegeți conceptul principal al blocurilor de locație din NGINX. Mulțumiri!

Cele mai bune jocuri Oculus App Lab
Dacă sunteți proprietarul căștilor Oculus, atunci trebuie să fiți informați despre încărcarea laterală. Încărcarea laterală este procesul de instalare...
Top 10 jocuri de jucat pe Ubuntu
Platforma Windows a fost una dintre platformele dominante pentru jocuri din cauza procentului imens de jocuri care se dezvoltă astăzi pentru a sprijin...
Cele mai bune 5 jocuri arcade pentru Linux
În zilele noastre, computerele sunt mașini serioase folosite pentru jocuri. Dacă nu puteți obține noul scor mare, veți ști la ce mă refer. În această ...