Installation: Webserver im Paket mitgeliefert oder standalone
Eine Webserver-Plattform kann meistens einfach auf einem Computer installiert werden. Deswegen werden besonders von Anfängern installierbare Pakete wieXAMPP bevorzugt.
Eine Installation der einzelnen Komponenten einer Webseite auf einem Server ist zeitaufwendig und fehleranfällig. Ein Emulations-Testsystem für solche Zwecke ist sicherlich sinnvoll.
Doch sollte man mitbedenken, dass Scriptsprachen heutzutage auch einen eigenen HTTP-Server mitliefern. So wird z.B. die ScriptsprachePHP mit einem eigenen Webserver ausgeliefert.
Ob sich solche Pakete für produktive Systeme eignen, siehe nachfolgende Abschnitte.
Betrieb auf einer physikalischen oder einer virtuellen Maschine
Ob es sinnvoll ist, eine Webserver-Plattform auf einer physikalischen bzw. virtuellen Maschine zu betreiben, hängt vom Anwendungsfall ab.
Oft ist es sinnvoll, die Datenbank auf einem getrennten physikalischen bzw. virtuellen System zu betreiben. Neben Performanz und Skalierbarkeit spielen dabei auch Sicherheitsüberlegungen eine Rolle. So wird eine Datenbank z.B. oftmals für einen Webshop oder eine Inhouse-Applikation verwendet; in diesem Fall ist es aus Sicherheitsgründen sinnvoll, die Datenbank auf einem getrennten System zu betreiben. In den letzten Jahren stieg die Gefahr, dass Datenbanken Ziele von Ransomware-Attacken werden.
Auch setzt sich immer häufiger die Meinung durch, dass kein getrennter Webserver benötigt wird. Ein Webserver kann in eine Applikation integriert werden, z.B. mit node.js.
Individueller virtualisierter Zuschnitt versus Performanz
Heutzutage wird mit sehr dynamischem Inhalt auf Webseiten gearbeitet. Eine Webserver-Plattform mit virtualisierten Anwendungen ist da eher ein Hindernis für Performanz. Es werden spezialisierte Prozesse benötigt, um Webinhalte zu generieren.
Anderseits könnte es sinnvoller sein, für die individuellen Bedürfnisse ein Docker-Image zu erstellen, um Anwendungen in Containern kleinräumig zu virtualisieren und damit der Flexibilität eines individuellen Zuschnitts einer Webserver-Plattform den Vorrang gegenüber ihrer Performanz einzuräumen. Eine erstellte Konfiguration kann mithilfe von Docker relativ einfach auf weiteren Systemen installiert werden.
Plattformeigenschaft
Sucht ein Client eine Webserver-Plattform auf, so kann von ihm, abstrakt betrachtet, nur die „Oberseite“ (obere Schicht, Frontend) der Plattform aufgesucht werden, während das, was an Daten und an Software auf der „Unterseite“ (darunterliegende Schicht, Backend) liegt, für ihn unzugänglich und verborgen bleibt. Für den Client erschließt sich also nur eine „Anwendersicht“ auf die Webserver-Plattform.
Anwendungsbeispiel
Die Anwendungen, auf welche die Webserver-Plattform zugeschnitten ist, können höchst unterschiedlich sein. Ein einfaches Beispiel für eine Webserver-Plattform-Anwendung ist folgendes: eine Web-zugängliche Datenbank einer öffentlichen Bibliothek kann als Anwendung aus einem Webportal mit unterschiedlichen Suchmaskenfunktionen bestehen. das Portal wird mit einem Browser-Client auf der „Oberseite“ der Webserver-Plattform aufgesucht, während sich auf der „Plattformunterseite“ u.a. eine Datenbank befindet. Die Datenbankabfragen, die vom Anwender gemacht werden, wenn er einen bestimmten Zeitschriftenartikel oder Buchtitel in dieser Bibliothek sucht, werden von der „Plattformoberseite“ „nach unten“ zur Datenbank weitergeleitet, dort verarbeitet und die Treffer der Abfragen – „nach oben“ lancierend – auf einem speziellen Set von Output-Webseiten angezeigt. Durch dieses kann sich der Anwender mit seiner Maus durchklicken.
Literatur
Oliver Liebel: Skalierbare Container-Infrastrukturen: das Handbuch für Administratoren. 3., aktualis. Aufl., Rheinwerk Verl., Bonn 2021, ISBN 978-3-8362-7772-3.
Sebastian Wolfgarten: Apache Webserver 2: Installation, Konfiguration, Programmierung. 2., aktualis. Aufl., Studentenausg. (Open source library) Addison-Wesley, München 2007, ISBN 978-3-8273-2566-2.
Reinhard Hofer: Webserver: Betrieb, Sicherheit, Codebeispiele. VDM – Verlag Dr. Müller, Saarbrücken 2006, ISBN 978-3-8364-0062-6.
Jörg Krause: PHP 5: Grundlagen und Profiwissen; Webserver-Programmierung unter Windows und Linux. 2., aktualis. Aufl., Hanser, München 2005, ISBN 3-446-40334-5.
Michael Hilscher: Der eigene Webserver: [der eigene Web-, FTP- und E-Mail-Server, komplettes Know-how für den dedizierten Webserver, Einrichtung und Administration eines LAMP-Systems]. Galileo Press, Bonn 2003, ISBN 3-89842-368-9.
Anmerkungen
↑Unter LEMP Stack Resources and Q&A. lemp.io-Internetportal, ohne Datumsangabe, Website abgerufen am 6. August 2021, lässt sich auf die Frage „What’s a LEMP stack?“ (zu deutsch: „Was ist ein LEMP Stack?“) folgendes nachlesen: „LEMP is a variation of the ubiquitous LAMP stack used for developing and deploying web applications. Traditionally, LAMP consists of Linux, Apache, MySQL, and PHP. Due to its modular nature, the components can easily be swapped out. With LEMP, Apache is replaced with the lightweight yet powerful Nginx.“ Zu deutsch: „LEMP ist eine Abwandlung des allgegenwärtigen LAMP-Stacks, der für die Entwicklung und Bereitstellung von Webanwendungen verwendet wird. LAMP besteht herkömmlich aus Linux, Apache, MySQL und PHP. Durch den modularen Aufbau können die Komponenten einfach ausgetauscht werden. Mit LEMP wird Apache durch das leichte und dennoch leistungsstarke Nginx ersetzt.“
↑Unter WAMPSERVER: Plate-forme de développement Web sous Windows. wampserver.com-Internetportal, ohne Datumsangabe, Website abgerufen am 6. August 2021, wird der sogenannte WampServer, wie folgt, beschrieben: „WampServer est une plate-forme de développement Web sous Windows pour des applications Web dynamiques à l’aide du serveur Apache2, du langage de scripts PHP et d’une base de données MySQL. Il possède également PHPMyAdmin pour gérer plus facilement vos bases de données.“ Zu deutsch: „WampServer ist eine Windows-basierte Webentwicklungsplattform für dynamische Webanwendungen mit Apache2-Server, PHP-Skriptsprache und MySQL-Datenbank. Er beherrscht auch PHPMyAdmin, um Ihre Datenbanken einfacher zu verwalten.“
↑Unter Was ist XAMPP? (FAQ #2165). strato.de-Internetportal, ohne Datumsangabe, Website abgerufen am 6. August 2021, wird auf die Frage „Was ist XAMPP?“ im ersten Satz der Antwort mit folgender Aussage aufgewartet: „XAMPP ist die Kombination des Apache Webservers, der Datenbank MySQL und der Skriptsprachen Perl und PHP.“
↑Unter What ist AMPPS? ampps.com-Internetportal, ohne Datumsangabe, Website abgerufen am 6. August 2021, wird auf die Frage „What is AMPPS?“ („Was ist AMPPS?“) folgendermaßen geantwortet: „AMPPS is an easy to install software stack of Apache, Mysql, PHP, Perl, Python and Softaculous auto-installer that can be used on Desktops and office servers.“ Zu deutsch: „AMPPS ist ein einfach zu installierender Software-Stack, bestehend aus Apache, Mysql, PHP, Perl, Python und Softaculous Auto-Installer, der auf Desktops und Office-Servern verwendet werden kann.“
↑Unter Eine Einführung in LAMP, LEMP, MEAN, XAMPP, WAMP und AMPPS Stack. geekflare.com-Internetportal, 5. Mai 2021, ‚Abschnitt 3 MEAN‘, findet sich folgende Ausführung: „Der Mean-Stack ist ein Open-Source-JavaScript-Stack, mit dem Sie schnelle, robuste und wartbare produktionsbereite moderne Webanwendungen erstellen können. Der mittlere Stapel ist MongoDB, Express, Angular und Node.js.“
↑Unter PHP HTTP Server: Handling HTTP Requests in PHP. phpapprentice.com-Internetportal, ohne Datumsangabe, Website abgerufen am 6. August 2021, werden folgende Ausführungen gemacht: „In PHP, you usually use a separate web server program that accepts HTTP requests and passes them to PHP to create a response. Common examples of separate web server programs are Apache and Nginx. However, PHP has a built in web server we can use during development.“ Zu deutsch: „In PHP verwendet man normalerweise ein separates Webserver-Programm, das HTTP-Anfragen entgegennimmt und an PHP weitergibt, um eine Antwort zu erstellen. Gängige Beispiele für separate Webserverprogramme sind Apache und Nginx. PHP hat jedoch einen eingebauten Webserver, den wir während der Entwicklung verwenden können.“