Apache & Nginx. Cunnessu da una catena

Cumu a combinazione Apache & Nginx hè implementata in Timeweb

Per parechje cumpagnie, Nginx + Apache + PHP hè una cumminazione assai tipica è cumuni, è Timeweb ùn hè micca eccezzioni. Tuttavia, capisce esattamente cumu hè implementatu pò esse interessante è utile.

Apache & Nginx. Cunnessu da una catena

L'usu di una tale cumminazione hè, sicuru, dettata da i bisogni di i nostri clienti. Nginx è Apache ghjucanu un rolu speciale, ognunu risolve un prublema specificu.

i paràmetri di basa Apache sò realizati in i schedarii di cunfigurazione di l'Apache stessu, è i paràmetri per i siti di u cliente passanu schedariu .htaccess. .htaccess hè un schedariu di cunfigurazione in quale u cliente pò cunfigurà indipindentamente e regule è u cumpurtamentu di u servitore web. Stu paràmetru s'applicà specificamente à u so situ. Per esempiu, grazia à a funziunalità Apache, l'utilizatori ponu cambià u modu operativu in a stessa versione PHP da mod_php à mod_cgi; pudete stabilisce redirects, ottimisazione per SEO, URL convenientu, certi limiti per PHP.

Nginx usatu cum'è un servitore proxy per redirige u trafficu à Apache è cum'è un servitore web per serve u cuntenutu staticu. Avemu ancu sviluppatu moduli di sicurezza per Nginx chì ci permettenu di prutezzione di i dati di i nostri utilizatori, per esempiu, per separà i diritti d'accessu.

Imaginemu chì un utilizatore visita u situ web di u nostru cliente. Prima, l'utilizatore ghjunghje à Nginx, chì serve u cuntenutu staticu. Succede istantaneamente. Allora, quandu si tratta di carricà PHP, Nginx trasmette a dumanda à Apache. È Apache, inseme cù PHP, genera digià cuntenutu dinamicu.

Funzioni di u bundle Apache & Nginx in Timeweb

U nostru hosting virtuale implementa 2 schemi operativi principali per Apache & Nginx: Cumpartu è Dedicatu.

Schema spartutu

Stu schema hè utilizatu per a maiò parte di l'utilizatori. Hè distinatu da a so simplicità è intensità di risorsa: u schema Shared usa menu risorse, per quessa chì a so tarifa hè più prezzu. Sicondu stu schema, u servitore corre un Nginx, chì permette di serve tutte e dumande di l'utilizatori, è parechji casi di Apache.

U schema Shared hè stata megliurà per un bellu pezzu: pocu à pocu avemu currettu i difetti. Conveniently, si pò esse fattu senza u bisognu di mudificà u codice fonte.

Apache & Nginx. Cunnessu da una catena
Schema spartutu

Schema dedicatu

Dedicatu richiede più risorse, cusì a so tarifa hè più caru per i clienti. In u schema Dedicatu, ogni cliente riceve u so propiu Apache separatu. I risorse quì sò riservati à u cliente, sò attribuiti solu. Cumu funziona: Ci sò parechje versioni di PHP in u servitore. Supportemu e versioni 5.3, 5.4, 5.6, 7.1, 7.2, 7.3, 7.4. Dunque, per ogni versione di PHP u so propiu Apache hè lanciatu.

Apache & Nginx. Cunnessu da una catena
Schema dedicatu

Zona sicura. Configurazione di zoni in Nginx

Nanzu, per Nginx, avemu usatu assai zoni di memoria spartuti (zoni) - un bloccu di servitore per duminiu. Questa cunfigurazione richiede assai risorse, postu chì una zona separata hè creata per ogni situ. Tuttavia, in i paràmetri di Nginx, a maiò parte di i siti sò di u listessu tipu, cusì ponu esse posti in una zona grazia à l'usu di direttive di carte in u modulu. ngx_http_map_module, chì permettenu di specificà currispundenza. Per esempiu, avemu un mudellu di zona in quale duvemu furnisce variàbili: percorsu à u situ, versione PHP, utilizatore. Cusì, a re-lettura di a cunfigurazione Nginx, vale à dì, a reload, hè stata accelerata.

Questa cunfigurazione hà salvatu assai risorse RAM è accelerà Nginx.

Reload ùn funziona micca!

In u schema Shared, avemu liberatu da a necessità di ricaricà Apache quandu cambiassi i paràmetri di u situ web. Precedentemente, quandu un cliente vulia aghjunghje un duminiu o cambià a versione PHP, una recarga obligatoria di Apache era necessariu, chì hà purtatu à ritardi in risposti è a performance di u situ affettata negativamente.

Avemu sbarazzatu di ricaricà creendu cunfigurazioni dinamiche. Grazie à mpm-itk (Modulu Apache), ogni prucessu funziona cum'è un utilizatore separatu, chì aumenta u livellu di sicurità. Stu metudu permette di trasfiriri dati nantu à l'utilizatore è u so document_root da Nginx à Apache2. Cusì, Apache ùn cuntene cunfigurazioni di u situ, li riceve in modu dinamicu, è i ricaricà ùn sò più necessarii.

Apache & Nginx. Cunnessu da una catena
Cunfigurazione di schema spartutu

E Docker?

Parechje cumpagnie sò passati à un sistema basatu in cuntainer. Timeweb hè attualmente cunsiderà a pussibilità di una tale transizione. Di sicuru, ci sò vantaghji è cunti à ogni decisione.

Inseme à vantaghji innegabili, u sistema di container furnisce à l'utilizatori menu risorse. In Timeweb, grazia à u schema di hosting descrittu, l'utilizatore ùn hà micca limitazione in RAM. Riceve più risorse chì in u containeru. Inoltre, l'utilizatore pò avè più moduli Apache caricati.

Timeweb alimenta circa 500 000 siti web. Pigliamu una grande rispunsabilità è ùn facemu micca cambiamenti istantanei, inghjustificati à l'architettura cumplessa. A combinazione Apache & Nginx hè affidabile è testata in u tempu. Avemu, à u turnu, pruvà à ottene u massimu rendimentu attraversu cunfigurazioni uniche.

Per u funziunamentu d'alta qualità è veloce di un gran numaru di siti, avete bisognu di utilizà un mudellu è cunfigurazione dinamica di Apache è Nginx. Permette di amministrari facilmente è rapidamente un gran numaru di servitori simili.

Source: www.habr.com

Add a comment