Definition

Webserver

Was ist ein Webserver?

Ein Webserver ist eine Einheit aus Software und Hardware, die HTTP und andere Protokolle verwendet, um auf Kundenanfragen zu antworten, die über das Internet eingehen.

Die Hauptaufgabe eines Webservers besteht darin, Seiteninhalte anzuzeigen, indem er Webseiten speichert, verarbeitet und den Benutzern zur Verfügung stellt. Neben HTTP (Hypertext Transfer Protocol) unterstützen Webserver auch SMTP (Simple Mail Transfer Protocol) und FTP (File Transfer Protocol), die für E-Mail, Datenübertragung und Speichern verwendet werden.

Die Hardware des Webservers ist mit dem Internet verbunden und ermöglicht den Datenaustausch mit anderen angeschlossenen Geräten, während die Webserversoftware steuert, wie ein Benutzer auf die gehosteten Dateien zugreift. Der Webserverprozess ist ein Beispiel für das Client/Server-Modell. Alle Computer, die Websites hosten, müssen über Webserversoftware verfügen.

Webserver dienen dem Web-Hosting oder dem Hosten von Daten für Websites und webbasierte Anwendungen – oder Webanwendungen.

Wie funktionieren Webserver?

Auf die Webserversoftware wird über die Domänennamen von Websites zugegriffen und sie gewährleistet das Liefern angefragter Inhalte an die Benutzer. Auch die Softwareseite besteht aus mehreren Komponenten, wobei mindestens ein HTTP-Server vorhanden ist. Der HTTP-Server ist in der Lage, HTTP und URLs zu verstehen. Als Hardware ist ein Webserver ein Computer, der Webserversoftware und andere Dateien im Zusammenhang mit einer Website speichert, wie zum Beispiel HTML-Dokumente, Bilder und JavaScript-Dateien.

Wenn ein Webbrowser, wie Google Chrome oder Firefox, eine Datei benötigt, die auf einem Webserver gehostet ist, fordert der Browser die Datei per HTTP an. Wenn die Anfrage eingeht, nimmt der HTTP-Server sie an, sucht den Inhalt und sendet ihn über HTTP an den Browser zurück.

Genauer gesagt, wenn ein Browser eine Seite von einem Webserver anfordert, läuft im Hintergrund eine Reihe von Schritten ab. Zuerst gibt eine Person eine URL in der Adressleiste des Webbrowsers an. Der Webbrowser erhält dann die IP-Adresse des Domain-Namens – entweder durch Übersetzung der URL über DNS (Domain Name System) oder durch Suche in seinem Cache. Anhand dessen findet der Browser nun den Webserver. Der Browser fordert dann die spezifische Datei vom Webserver durch eine HTTP-Anfrage an. Der Webserver antwortet und sendet dem Browser die angeforderte Seite wiederum über HTTP. Wenn die angeforderte Seite nicht existiert oder wenn etwas schief geht, antwortet der Webserver mit einer Fehlermeldung. Der Browser ist dann nicht in der Lage, die Webseite anzuzeigen.

Es können auch mehrere Domains auf einem Webserver gehostet werden.

Beispiele für Webserveranwendungen

Webserver sind oft Teil eines größeren Pakets von Internet- und Intranet-bezogenen Programmen, für die sie eingesetzt werden:

  • das Senden und Empfangen von E-Mails;
  • das Herunterladen von Anfragen für FTP-Dateien; und
  • Erstellen und Veröffentlichen von Webseiten.

Viele einfache Webserver unterstützen auch serverseitiges Skripting. Damit lassen sich Skripte auf einem Webserver einsetzen, die die Antwort an den Client anpassen können. Serverseitiges Skripting läuft auf dem Serverrechner und verfügt typischerweise über einen breiten Funktionsumfang, der auch den Datenbankzugriff einschließt. Der serverseitige Skripting-Prozess verwendet auch Active Server Pages (ASP), Hypertext Prepocessor (PHP) und andere Skriptsprachen. Dieser Prozess ermöglicht auch das dynamische Erstellen von HTML-Dokumenten.

Dynamische versus statische Webserver

Ein Webserver kann entweder statische oder dynamische Inhalte hosten und verarbeiten. Statisch sind solche Inhalte, die so angezeigt werden, wie sie sind, während dynamischer Inhalt aktualisiert und geändert werden kann. Ein statischer Webserver besteht aus einem Computer und einer HTTP-Software.

Dynamische Webbrowser bestehen aus einem Webserver und weiterer Software wie einem Anwendungsserver und einer Datenbank. Er gilt als dynamisch, da der Anwendungsserver zur Aktualisierung aller gehosteten Dateien verwendet werden kann, bevor sie an einen Browser gesendet werden. Der Webserver kann Inhalte erzeugen, wenn sie von der Datenbank angefordert werden. Dieser Prozess ist zwar flexibler, aber auch komplizierter.

Beliebte und verbreitete Webserversoftware

Es gibt eine Reihe gängiger Webserver, dazu gehören:

  • Apache Server: Er wurde von der Apache Software Foundation entwickelt und ist ein Open-Source-Webserver für Windows, macOS, Unix, Linux, Solaris und andere Betriebssysteme; er benötigt die Apache-Lizenz.
  • Microsoft Internet-Informationsservices (IIS): Von Microsoft für Microsoft-Plattformen entwickelt ist dieser Webserver verbreitet.
  • Nginx: Wegen seiner geringen Ressourcenanforderungen und Skalierbarkeit ist Nginx (ausgesprochen: Engine X) ein bei Admins beliebter Open-Source-Webserver. Aufgrund seiner ereignisgesteuerten Architektur kann er viele Sitzungen gleichzeitig verarbeiten. Nginx kann auch als Proxy-Server und Load Balancer verwendet werden.
  • Lighttpd: Ein weiterer Open-Source-Webserver, der mit dem FreeBSD-Betriebssystem geliefert wird. Er gilt als schnell und sicher, verbraucht aber gleichzeitig weniger CPU-Leistung.

Zu den führenden Webservern gehören Apache, Microsofts Internet Information Services (IIS) und Nginx. Weitere Webserver waren/sind der NetWare-Server von Novell, Google Web Server (GWS), Sun Java System und die Domino-Serverfamilie von IBM.

Bei der Auswahl eines Webservers ist unter anderem zu berücksichtigen, wie gut er mit dem Betriebssystem und anderen Servern zusammenarbeitet, wie gut er mit der serverseitigen Programmierung umgehen kann, welche Sicherheitsmerkmale er aufweist und welche Veröffentlichungs-, Suchmaschinen- und Website-Erstellungstools mit ihm einhergehen.

Webserversicherheit

Es gibt eine Fülle von Methoden, um die Sicherheit von Webservern zu erhöhen. Dazu gehören:

  • ein Reverse-Proxy, der dazu dient, einen internen Server zu verstecken und als Vermittler für Datenverkehr zu fungieren, der von einem internen Server ausgeht;
  • Zugriffsbeschränkungen durch Prozesse wie das Einschränken des Zugriffs des Web-Hosts auf Maschinen der Infrastruktur oder die Verwendung von Secure Socket Shell (SSH);
  • regelmäßige Patches und Aktualisierungen für Webserver, um sicherzustellen, dass dieser nicht anfällig für Schwachstellen ist;
  • Netzwerküberwachung, um sicherzustellen, dass es keine nicht autorisierten Aktivitäten gibt;
  • und eine Firewall und SSL (Secure Sockets Layer). Mit ihnen lässt sich der HTTP-Verkehr überwachen, während eine SSL zur Datensicherheit beitragen kann.
Diese Definition wurde zuletzt im November 2023 aktualisiert

Erfahren Sie mehr über Netzwerksoftware

ComputerWeekly.de
Close