Letzte Woche um
Virtuelles Hosting (Shared Hosting) geht davon aus, dass viele Kundenkonten auf einem Server gehostet werden. In der Regel enthält ein Kundenkonto mehrere Websites. Websites funktionieren sowohl mit vorgefertigten CMS (z. B. Bitrix) als auch mit benutzerdefinierten CMS. Daher sind die technischen Anforderungen aller Systeme unterschiedlich, sodass mehrere PHP-Versionen auf demselben Server verwaltet werden müssen.
Wir verwenden Nginx als Hauptwebserver: Er akzeptiert alle Verbindungen von außen und stellt statische Inhalte bereit. Wir leiten die verbleibenden Anfragen weiter an den Apache-Webserver. Hier beginnt die Magie: Jede PHP-Version führt eine separate Apache-Instanz aus, die an einem bestimmten Port lauscht. Dieser Port ist im virtuellen Host der Client-Site registriert.
Weitere Informationen zur Funktionsweise des Shared-Schemas finden Sie unter
Geteiltes Schema
Es ist wichtig zu beachten, dass wir PHP-Pakete für verschiedene Versionen installieren, da normalerweise alle Distributionen nur eine PHP-Version haben.
Sicherheit zuerst!
Eine der Hauptaufgaben des Shared Hostings besteht darin, die Sicherheit der Kundendaten zu gewährleisten. Verschiedene Konten, die sich auf demselben Server befinden, sind unabhängig und unabhängig. Wie es funktioniert?
Website-Dateien werden in den Home-Verzeichnissen der Benutzer selbst gespeichert und die erforderlichen Pfade werden im virtuellen Host der Webserver angegeben. Es ist wichtig, dass die Webserver Nginx und Apache Zugriff auf die endgültigen Dateien eines bestimmten Clients haben, da der Webserver nur von einem Benutzer gestartet wird.
Nginx verwendet einen vom Timeweb-Team entwickelten Sicherheitspatch: Dieser Patch ändert den Benutzer auf den in der Webserver-Konfigurationsdatei angegebenen Benutzer.
Bei anderen Hosting-Anbietern lässt sich dieses Problem beispielsweise durch Manipulation erweiterter Dateisystemrechte (ACL) lösen.
Apache verwendet zur Ausführung ein Multiprocessing-Modul
Dank der oben beschriebenen Vorgänge erhalten wir somit eine sichere, isolierte Umgebung für jeden Kunden. Gleichzeitig lösen wir auch Skalierungsprobleme beim Shared Hosting.
Wie die Kombination aus Apache und Nginx umgesetzt wird, kann nachgelesen werden
Wenn Sie Fragen an unsere Experten haben, schreiben Sie in die Kommentare. Wir werden versuchen, in den folgenden Artikeln alles zu beantworten bzw. die Lösung des Problems genauer zu beschreiben.
Source: habr.com