Ein Webserver ist eine spezielle Software, welche Dienste, Daten bzw. Inhalte für das Internet zum Abruf bereitstellt. Damit eine Seite angezeigt werden kann, wird ein Webclient (Browser) benötigt.

6_Abbildung-2-3-1


Wozu braucht man einen Webserver?

In der Regel alle diejenigen, die ihren Internetauftritt ins Internet bzw. in die Öffentlichkeit stellen möchten. Am bequemsten geht das über einen Internet-Provider, diese Provider sind weltweit an Datennetze angeschlossen. Dort mietet man sich eine Domain und Webspace und lädt die erstellten Internetseiten auf den dazu bereitgestellten Speicherplatz.
Spätestens dann, wenn eigene Internetseiten entwickelt bzw. dynamische Seiten mit PHP und MySQL programmiert werden, sollte man auf dem heimischen Rechner einen Webserver in Betrieb nehmen.

Wie arbeitet ein Webserver?

Geben wir in einem Webclient (Browser) eine Adresse ein, dann wird zu einem entsprechendem Webserver hin eine HTTP- Anfrage gestellt. Mit dem Namen in der Adresszeile z.B. https://www.initiative-s.de wird der richtige Server und das richtige Programm auf dem Server ausgewählt.
Der Webserver ist eine Programm oder Dienst den es von unterschiedliche Herstellern gibt. Bekannte Programme sind, der Apache, Internet Information Server (IIS nur Win) und der Tomcat.
Der Webserver wartet auf Anfragen. Wird bei einer Anfrage keine bestimmte Datei angefordert, wird in der Regel vom Webserver eine Startseite default.html oder index.html ausgeliefert.
Der Server sieht dabei in ein konfiguriertes Verzeichnis und liefert entsprechend die Datei zurück zum Webclient. In der Regel sind diese Dateien, HTML-Dateien, die vom Webclient gelesen und dargestellt werden. Statischen Inhalte (HTML-Dateien) werden direkt vom Webserver an den Webclient wiedergegeben, anders als bei dynamischen Webseiten, welche je nach Programmierung und Anforderung weitere Module benötigen. Diese erkennt man z.B. durch die Dateiendungen php, asp u.a.
Jeder Webclient kann nur HTML-Code darstellen, also muß dynamischer Content z.b. *.php Dateien vom Webserver weiter gereicht werden z.B. an einen PHP-Parser, der die PHP-programmierten Dateien interpretiert und das Ergebnis als statische HTML-Seite an den WebClient wieder gibt.

Verschiede gängige Webserver:

Der Internet Information Server
Der Internet Information Server wird als zusätzlich Komponente seit WINDOWS 2000 ausgeliefert. Abgekürzt wird er IIS und ist eigentlich kein eigenständiges Produkt, sondern ein Bestandteil von Windows.
Der Apache
In der Version 2 ist er Apache der meist genutzte Webserver im Internet. Über serverseitige Skriptsprachen wie PHP und CGI lassen sich auch dynamische Webseiten erstellen. Über Module können viele weiter Features eingebunden werden.
Apache Tomcat
Stellt eine Umgebung zur Ausführung von Java-Code auf Webservern bereit, die im Rahmen des Jakarta-Projekts der Apache Software Foundation entwickelt wird. Es handelt sich um einen in Java geschriebenen Servlet-Container, der mit Hilfe des JSP-Compilers Jasper auch JavaServer Pages in Servlets übersetzen und ausführen kann. Dazu kommt ein kompletter HTTP-Server. Der HTTP-Server von Tomcat wird vor allem zur Entwicklung eingesetzt, während in Produktion zumeist ein Apache Web-Server vor Tomcat geschaltet wird. Dazu wird in Apache ein Plugin eingebunden, das Requests für dynamische Inhalte an Tomcat weiterleitet. Das Plugin spricht Tomcat dann normalerweise über das Apache JServ Protocol an.
nginx
Ist ein Webserver und Reverse Proxy, welcher sehr schnell und schmal ist. Er ist dafür ausgelegt, selbst unter hoher Last nur wenig Ressourcen zu verbrauchen. nginx wurde von Igor Sysoev entwickelt. Nginx findet derzeit bei 22,4 % der Top 10.000 Websites Verwendung.
XAMPP
Ist eine Zusammenstellung von freier Software. XAMPP ermöglicht das einfache Installieren und Konfigurieren des Webservers Apache mit der Datenbank MySQL bzw. SQLite und den Skriptsprachen Perl und PHP. XAMPP enthält zusätzlich andere nützliche Tools wie den FTP-Server ProFTPD, den Mailserver Mercury, phpMyAdmin, Webalizer und OpenSSL. Besonders gut geeignet bei Eigenentwicklungen und dynamischen Inhalten im Heimbereich.
MAMP
Die Abkürzung “MAMP” steht für: Macintosh, Apache, Mysql und PHP. Analog zu ähnlichen Paketen für Windows und Linux, erstellen sie mit MAMP in kurzer Zeit einen vollwertigen Webserver mit PHP und MySql und zudem ist das Softwarepaket kostenfrei.

Fazit:
Kleine aber feine Auswahl von bekannten Webservern. In den nächsten Beiträgen  werden wir verschiedene Webserver auf verschiedenen Betriebssystemen installieren und richtig konfigurieren.