- HTTP Server
-
Ein Webserver (lat. servus, engl. server „Diener, Dienst“) ist ein Computer, der Dokumente an Clients wie z. B. Webbrowser überträgt. Als Webserver bezeichnet man den Computer mit Websoftware oder nur die Websoftware. Webserver werden lokal, in Firmennetzwerken und überwiegend als WWW-Dienst im Internet eingesetzt. Dokumente können somit dem geforderten Zweck lokal, firmenintern und weltweit zur Verfügung gestellt werden.
Inhaltsverzeichnis
Übertragungsmethode
Als Übertragungsmethoden dienen standardisierte Übertragungsprotokolle (HTTP, HTTPS) und Netzwerkprotokolle (TCP/IP) üblicherweise über Port 80 (HTTP) und Port 443 (HTTPS).
Dokumente
Die zur Verfügung gestellten Dokumente können statisch und dynamisch sein.
Bei statischen Dokumenten werden HTML-Seiten inklusive verknüpfter Designbeschreibungen (CSS) und Bilddateien (jpg, png, gif, swf) übertragen.
Dynamische Dokumente werden beim Aufruf aus unterschiedlichen Quellen zusammengestellt und übertragen (ASP, PHP, JSP, etc.). Zum Beispiel werden PHP-Dokumente während des Aufrufs serverseitig geparst, interpretiert und als HTML-Dokument an den Webbrowser übertragen. Mit dieser Technologie lassen sich Informationen aus unterschiedlichsten Quellen lesen, verarbeiten und speichern (zum Beispiel Datenbanken, Formularauswertung, E-Mail). Typische Anwendungen sind Onlineshops, Weblogs, Onlineforen, E-Mail-Provider, Online-Bilddatenbanken/-Bibliotheken.
Beispiel
Sie sind verbunden mit dem Internet und geben in die Adresszeile Ihres Webbrowsers eine Webadresse ein (z. B. de.wikipedia.org). Dem Webbrowser wird diese Adresse vom Betriebssystem mittels Abfrage eines DNS-Servers in eine IP-Adresse umgesetzt (z. B. 145.168.145.25). Der Webbrowser sendet eine Anfrage an diese IP-Adresse auf Port 80. Von dort antwortet der Webserver und sendet die Homepage aus seinem Stammverzeichnis an den Webbrowser.
Auf einem Webserver werden üblicherweise alle Anfragen in einer Logdatei protokolliert, aus dem mittels Logdateianalyse Statistiken über Anzahl der Zugriffe pro Seite generiert werden können. HTTP ist ein verbindungs- und zustandsloses Protokoll. Damit ist die Zuordnung einer Anforderung zu einem Nutzer über die IP-Adresse grundsätzlich möglich. Die Zuordnung ist jedoch z. B. bei Web-Zugängen über LAN nicht immer eindeutig. Die Angabe von Visits, Hits, Benutzer o. Ä. ist daher nur eingeschränkt aussagekräftig. Zwischengeschaltete Proxyserver, die gegenüber dem Webserver als Client auftreten, erschweren diese Zuordnung zusätzlich. Um genauere Daten zu erhalten, werden Cookies und dynamische Seiten (s. o.) eingesetzt.
Zur Verschlüsselung und Authentifizierung der Server-Client-Kommunikation wird ggf. das HTTPS-Verfahren eingesetzt.
Geschichte
1989 schlug Tim Berners-Lee seinem Arbeitgeber CERN, der Europäischen Organisation für Kernforschung, ein Projekt vor, das den Austausch von Informationen unter den mehreren tausend Mitarbeitern sichern sollte. Er führte unter anderem aus, dass ein „Web“ miteinander verbundener Informationen nützlicher als eine festgelegte Hierarchie sei und die Speichersoftware von der Anzeigesoftware getrennt sein müsse. Er konnte dieses Projekt verwirklichen und entwickelte in dessen Verlauf den ersten Webserver CERN httpd und den ersten Webbrowser WorldWideWeb, beide unter NeXTStep. Der CERN httpd wurde auf Unix und VMS portiert und bis 1996 weiterentwickelt.[1]
1994 entschied sich Tim Berners-Lee, das World Wide Web Consortium zu gründen, um die weitere Entwicklung der verwendeten Technologien (HTTP, HTML, usw) zu regulieren.
Software
Die beiden heute mit Abstand bedeutendsten Webserver sind Apache HTTP Server und Microsoft Internet Information Services (kurz: IIS).
Weitere Webserver:
- Abyss Web Server (Aprelium Technologies; Freeware)
- AIDeX Webserver (AIDeX Softwareentwicklung, Freeware)
- Apache Tomcat (Apache Software Foundation; freie Software)
- AOLserver (America Online; freie Software)
- Boa Webserver (GNU General Public License)
- Caudium (GNU General Public License)
- Cherokee Webserver (GNU General Public License)
- Elserv für Emacs
- Goron (GNU General Public License)
- iPlanet (Sun Microsystems)
- KF Web Server (KeyFocus, Freeware)
- lighttpd (BSD-Lizenz)
- LiteSpeed (LiteSpeed Technologies; proprietär)
- MyServer (MyServer Project; freie Software)
- nginx (BSD-artige Lizenz)
- Roxen (Webserver) (Roxen Internet Software; GNU General Public License)
- Sun Java System Web Server (Sun Microsystems)
- tclhttpd (scriptfähiger Webserver in Tcl; freie Software)
- thttpd (ACME Laboratories; freie Software)
- Tntnet (für Webapplikationen in C++)
- Tux (GNU General Public License)
- WN server (GNU General Public License)
- Xitami (iMatix Corporation; freie Software)
- Yaws (Webserver in Erlang, sehr gut skalierbar)
- Zope (Zope Corporation, freie Software)
Siehe auch:
- Vergleich von Webservern in der englischen Wikipedia
Belege
- ↑ CERN httpd. World Wide Web Consortium. Abgerufen am 25. April 2009.
Siehe auch
Weblinks
Wikimedia Foundation.