Apache og Nginx. Koblet med en kjede (del 2)

Forrige uke kl første del I denne artikkelen beskrev vi hvordan Apache og Nginx-kombinasjonen i Timeweb ble bygget. Vi er svært takknemlige overfor leserne for spørsmål og aktiv diskusjon! I dag forteller vi deg hvordan tilgjengeligheten av flere versjoner av PHP på én server er implementert og hvorfor vi garanterer datasikkerhet til våre kunder.

Apache og Nginx. Koblet med en kjede (del 2)
Delt hosting (Delt hosting) forutsetter at mange klientkontoer ligger på én server. Som regel inneholder én kundes konto flere nettsteder. Nettsteder fungerer både på ferdige CMS (for eksempel Bitrix) og tilpassede. Dermed er de tekniske kravene til alle systemer forskjellige, så flere versjoner av PHP må administreres innenfor samme server.

Vi bruker Nginx som hovedwebserver: den aksepterer alle tilkoblinger utenfra og serverer statisk innhold. Vi sender de resterende forespørslene videre til Apache-nettserveren. Det er her magien begynner: hver versjon av PHP kjører en separat Apache-instans som lytter på en bestemt port. Denne porten er registrert i den virtuelle verten til klientsiden.

Du kan lese mer om driften av Delt ordningen i den første delen av artikkelen.

Apache og Nginx. Koblet med en kjede (del 2)
Delt opplegg

Det er viktig å merke seg at vi installerer PHP-pakker for forskjellige versjoner, for vanligvis har alle distribusjoner kun én versjon av PHP.

Sikkerhet først!

En av hovedoppgavene til delt hosting er å sikre sikkerheten til klientdata. Ulike kontoer, plassert på samme server, er uavhengige og uavhengige. Hvordan det fungerer?

Nettstedfiler lagres i hjemmekatalogene til brukerne selv, og de nødvendige banene er spesifisert i den virtuelle verten til webserverne. Det er viktig at webserverne, Nginx og Apache, har tilgang til de endelige filene til en spesifikk klient, siden webserveren startes av kun én bruker.

Nginx bruker en sikkerhetsoppdatering utviklet av Timeweb-teamet: denne oppdateringen endrer brukeren til den som er spesifisert i webserverens konfigurasjonsfil.

For andre vertsleverandører kan dette problemet løses, for eksempel gjennom manipulering av utvidede filsystemrettigheter (ACL).

Apache bruker en multiprosesseringsmodul for å kjøre mpm-itk. Den lar hver VirtualHost kjøre med sin egen bruker-ID og gruppe-ID.
Apache og Nginx. Koblet med en kjede (del 2)
Derfor, takket være operasjonene beskrevet ovenfor, oppnår vi et sikkert, isolert miljø for hver klient. Samtidig løser vi også skaleringsproblemer for Shared hosting.

Hvordan Apache og Nginx-kombinasjonen er implementert kan leses inn første del vår artikkel. I tillegg er en alternativ konfigurasjon gjennom Dedicated-ordningen også beskrevet der.

Hvis du har spørsmål til våre eksperter, skriv i kommentarfeltet. Vi vil prøve å svare på alt eller beskrive løsningen på problemet mer detaljert i de følgende artiklene.

Kilde: www.habr.com

Legg til en kommentar