Nginx: configurare și instalare

Ce este apache, nginx? Scopul, caracteristicile, opțiunile setărilor sunt lucruri pe care fiecare dezvoltator web trebuie să le cunoască pentru a-și testa realizările.

Despre nginx

configurarea nginxAcest instrument are un flux de lucru principal și mai multe. Prima este citirea și testarea configurației. Gestionarea proceselor de lucru este, de asemenea, sub controlul său. Sarcina acestuia este de a procesa cererile primite. Nginx utilizează un model bazat pe evenimente. De asemenea, mecanismele care depind de sistemul de operare sunt utilizate pentru a obține alocarea eficientă a solicitărilor direct între fluxurile de lucru. Numărul lor este întotdeauna indicat în fișierul de configurare. Valoarea poate fi fixată sau setată automat, pe baza numărului de nuclee de procesoare cu care puteți lucra. În nginx, sistemul și modulele sunt configurate utilizând fișierul de configurare. Prin urmare, dacă este necesar să schimbați ceva, atunci este necesar să o căutați. De obicei, este în direcția / etc / rginx (dar calea se poate schimba atunci când se utilizează alte sisteme) și are o extensie .conf.

Pornire, reporniri și jurnale

instalarea și configurarea nginxPentru a face acest lucru, trebuie să obțineți executabilul pentru a funcționa. Serverul nginx poate fi configurat numai când este pornit. Controlul se efectuează prin apelarea executabilului cu opțiunea -s. Pentru aceasta, utilizați următoarea intrare:

semnal nginx -s

În acest caz, puteți înlocui astfel de comenzi (ar trebui să provină de la utilizatorul care a lansat instrumentul):

  1. Stop. Folosit pentru oprirea rapidă.
  2. Reîncarcă. Este necesară comanda pentru reîncărcarea fișierului de configurare. Problema este că orice modificări nu vor fi aplicate în timp ce fișierul funcționează. Și pentru ca acestea să intre în vigoare, este necesară o repornire. Imediat ce acest semnal este primit, procesul principal va începe să verifice corectitudinea componentei sintactice a fișierului de configurare și să încerce să aplice instrucțiunile disponibile acolo. Dacă aceasta nu reușește, va reveni la modificări și va funcționa cu setările vechi. Dacă totul sa întâmplat cu succes, atunci vor fi demarate noi procese de lucru, iar cel vechi va fi trimis o cerere pentru a fi finalizată.
  3. Quit. Aplicabil pentru oprire ușoară. Aplicabil dacă trebuie să așteptați până când cererile curente vor fi terminate.
  4. Redeschideți. Închideți și deschideți fișierele jurnal.

Utilizarea utilitarelor

Procesele pot fi, de asemenea, configurate folosind unelte Unix (de exemplu, utilitatea kill este considerată). De obicei, ei folosesc mecanismul pentru a trimite semnalul direct cu datele. Ele sunt legate prin ID. Aceste date sunt stocate în fișierul nginx.pid. Să presupunem că suntem interesați de numărul 134 al procesului. Apoi, pentru terminarea netedă, trebuie să trimitem următoarele informații:

ucide -s QUIT 1628

Să spunem că vrem să vedem o listă cu toate fișierele care rulează. Utilizăm utilitarul ps pentru a face acest lucru. Comanda va arăta astfel:

ps -ax | grep nginx

Asta este, după cum puteți vedea, cu utilizarea de instrumente suplimentare, este indicat că este aplicarea sa. Și acum, să ne concentrăm asupra modului în care se face nginx-tuning.

Structura fișierului de configurare

Configurarea serverului nginxInstalarea și configurarea nginx asigură lucrul cu module. Acestea sunt configurate folosind directive specificate în fișierul de configurare. Ele sunt simple și blocate. Primul tip este format din directivele și parametrii, care sunt separate prin spații, iar capătul lor este indicată prin punct și virgulă - (-). Blocul are o structură similară. Dar în această directivă, în loc de sfârșit, se plasează un set de instrucțiuni suplimentare, care sunt plasate în brațe ({instrucțiuni}). Dacă numele și parametrii altor procese pot fi plasate în ele, atunci astfel de construcții sunt deja numite context. Un exemplu este http, locație și server.

Distribuția conținutului static

Aceasta este una dintre cele mai importante sarcini care se confruntă cu configurația nginx. Distribuția conținutului statistic presupune imagini și pagini HTML (nu dinamice). Să presupunem că avem nevoie de o singură treabă pentru a configura un cluster nix nginx. Este dificil să faci asta? Nu, și să aruncăm o privire la un exemplu. Înainte de a trece la aceasta, este necesar să detaliați condițiile problemei. Deci, în funcție de solicitări, fișierele vor proveni din diferite directoare locale. Deci, în / data / www avem documente HTML. Și directorul / data / images conține imagini. Configurația optimă nginx necesită, în acest caz, editarea fișierului de configurare, în care trebuie să configurați blocul server în interiorul http. Pentru asistență, vor fi utilizate și două locații.

Implementare: server

o singură dată lucrează la crearea unui cluster nix nginxDeci, mai întâi trebuie să creați directoarele și să plasați fișierele cu extensiile necesare (în html trebuie să adăugați conținut). Apoi deschideți fișierul de configurare. În el, în mod implicit, există deja mai multe blocuri de server, care în masă sunt comentate. Pentru a obține rezultatul optim, acest proces trebuie făcut în mod implicit cu privire la toate componentele. Apoi adăugați un nou bloc de server cu acest cod:

http {

server {

}

}

Fișierul de configurare poate funcționa cu mai multe astfel de blocuri. Dar ele trebuie să se distingă prin numele și porturile lor, prin care sunt primite datele.

Implementare: locație

Apache nginx oferă opțiuni de personalizareEste definit în interiorul serverului:

locație / {

rădăcină / date / www;

}

Prezența semnului "/" este necesară pentru a compara datele primite și pentru a vedea dacă există o astfel de adresă din cererea procesată aici. Dacă nu există probleme, specificați calea / datele / www la fișierul necesar, care se află în acest sistem local. Dacă meciul are mai multe blocuri, atunci este selectat cel cu cel mai lung prefix. În exemplul de mai sus, lungimea sa este egală cu una, adică utilizarea este exclusiv dacă nu există "concurenți". Acum, să o îmbunătățim:

locație / imagini / {

rădăcină / date;

}

După cum puteți determina, căutăm imagini. Și acum să combinăm toate lucrările care au fost mai devreme, iar configurația în momentul de față arată astfel:

server {

locație / {

rădăcină / date / www;

}

locație / imagini / {

rădăcină / date;

}



}

Aceasta este versiunea de lucru, care se întâmplă standard numărul portului 80. Acest server poate fi accesat cu ușurință pe computerul local, dacă accesați: http: // localhost /. Cum funcționează toate acestea?

Funcționarea exemplului

Configurarea nginx pe calculatorul localDeci, atunci când cererile vin care încep cu / imagini, atunci fișierele server din directorul corespunzător vor fi trimise utilizatorului. În lipsa acestuia se va da informații care indică eroarea 404. Dacă efectuat configurarea Nginx pe computerul local, atunci cererea http: //localhost/images/example.jpg vom obține un fișier al cărui /data/images/example.jpg locație. Dacă specificați un caracter "/", căutarea va fi efectuată în directorul / data / Dar tocmai am schimbat configurația. Pentru a începe să lucreze, trebuie să fie repornit. Pentru aceasta, folosiți comanda nginx -s reload. În cazul în care funcționarea normală nu este posibilă, în access.log și fișierele error.log situate în Directiva / usr / / rginx / jurnalele locale, puteți căuta cauza defecțiunii.

Crearea unui server proxy simplu

optimă configurație nginxSe poate spune despre nginx - setarea acestui obiect este una dintre aplicațiile frecvente (și destul de ușor, printre altele). Aici se folosește principiul serverului, care acceptă solicitarea, apoi redirecționează-le spre site-urile necesare. După aceea, se așteaptă un răspuns de la ei, care îi direcționează către cel care a stabilit sarcina. Așadar, să examinăm un exemplu de creare a unui punct de bază. Acesta va gestiona cererile utilizatorilor și le va furniza imagini din directorul local. Deci, la blocul http adăugăm încă un server cu următorul conținut:

server {

asculta 8080;

rădăcină / date / up1;

locație / {

}

}

Acum, să vă descifrăm: este creat un server simplu. El va asculta port 8080. Nu specificați ascultați, atunci serverul va rula pe 80. Vor fi afișate toate cererile din cadrul sistemului de fișiere local, care sunt direcționate către directorul / date / up1 (desigur, înainte că va fi necesar să-l creeze). Pentru a putea verifica acolo, trebuie să puneți fișierul index.html. Datorită amplasării directivelor în contextul serverului rădăcină putem folosi de locație, în orice moment (ca restricții de acces, astfel, eliminate). Acum lucrăm la crearea unui server proxy. Pentru ca aceasta să funcționeze, avem nevoie de directivă proxy_pass, pentru care va fi specificat numele de protocol, iar instalația portuară ca parametri (pentru conectarea locală va arata http: // localhost: 8080). Rezultatul este următorul:

server {

locație / {

proxy_pass http: // localhost: 8080;

}

locație / imagini / {

rădăcină / date;

}

}

Dacă examinați codul și analizați-l, este posibil să observați schimbarea celui de-al doilea bloc de locație. Deci, în acest caz, poate funcționa cu extensii tipice de imagine. În mod ușor diferit, ar putea fi afișat în felul următor:

locație ~ (gif | jpg | png) $ {

rădăcină / date / imagini;

}

Configurația finală a serverului proxy este următoarea:

server {

locație / {

proxy_pass http: // localhost: 8080 /;

}

locație ~ (gif | jpg | png) $ {

rădăcină / date / imagini;

}

}

Acesta va filtra cererile, la sfârșitul căruia există extensii specificate, și le va trimite celui care a cerut fișierele. Nu uitați că dacă doriți să verificați fișierul de configurare, va trebui să îl reporniți. Și crede-mă, e cea mai simplă nginx-tuning. Dacă deschideți fișierul de configurare al serverului Vkontakte sau al unei alte companii mari, acestea vor avea mai mult cod decât cuvintele din acest articol.

Distribuiți pe rețelele sociale:

înrudit
Privire de ansamblu asupra CentOS 7: instalare, setări și recomandăriPrivire de ansamblu asupra CentOS 7: instalare, setări și recomandări
Cum să joci un maniac în "KS: GO"? Regulile jocului, crearea unei modificăriCum să joci un maniac în "KS: GO"? Regulile jocului, crearea unei modificări
Rezultatul erorilor în PHPRezultatul erorilor în PHP
Setări Cron: caracteristici, instrucțiuni pas cu pas și feedbackSetări Cron: caracteristici, instrucțiuni pas cu pas și feedback
Instalarea Apache pe Ubuntu și WindowsInstalarea Apache pe Ubuntu și Windows
Eroarea 502 Bad Gateway - ce este? Cauze și soluțiiEroarea 502 Bad Gateway - ce este? Cauze și soluții
Despre ce să deschidem chmDespre ce să deschidem chm
Server web pentru testarea site-urilor și a aplicațiilorServer web pentru testarea site-urilor și a aplicațiilor
Eroare de acces "400 Solicitare greșită": ce este, și cum să remediați situația?Eroare de acces "400 Solicitare greșită": ce este, și cum să remediați situația?
Cum se instalează config-ul în `KS GO` și cum să-ți scrieți propria?Cum se instalează config-ul în `KS GO` și cum să-ți scrieți propria?
» » Nginx: configurare și instalare