Was ist ein Webserver?

Auf einem Webserver speichert man Webinhalte und stellt hierdurch ihre ständige Erreichbarkeit sicher. Wenn Sie also eine Internetadresse in Ihrem Webbrowser aufrufen, ist es stets ein solcher Server, der die einzelnen Website-Bestandteile an Ihren Rechner schickt. Damit die Website zu jeder Zeit erreichbar ist, muss der betreffende Webserver permanent online sein.

Webserver: Defintion und Geschichte

Als Webserver (englische Schreibweise: „web server“; auch „HTTP-Server“ genannt) bezeichnet man jene Server, die zur Verbreitung von Webinhalten im Inter- oder Intranet dienen (englisch: „to serve“ = dienen/bedienen). Als Teil eines Rechnernetzwerks übertragen sie Dokumente an sogenannte Clients („Kunden“) – beispielsweise eine Webseite an einen Webbrowser.

Der Begriff kann sich generell auf zwei verschiedene Dinge beziehen: Entweder auf die Software eines Webservers (also das Programm an sich) oder den Computer, auf dem die Webserver-Software ausgeführt wird. Wenn es sich um den letztgenannten Webserver-Rechner handelt, wird dieser auch Host genannt (dabei kann ein Host auch mehrere Server-Programme beheimaten). Im Folgenden wird deshalb von Webserver-Software/HTTP-Server-Software (bzw. -Programm) oder aber von einem Host gesprochen, wenn explizit eine der beiden Bedeutungen gemeint ist.

Die Entwicklung des HTTP-Servers ist eng mit dem britischen Physiker und Informatiker Tim Berners-Lee verknüpft. 1989 regte dieser an, den Informationsaustausch des CERN (der Europäischen Organisation für Kernforschung) über ein Hypertext-System einfacher und schneller zu gestalten. Zusammen mit Robert Cailliau legte er 1990 einen Projektplan vor, aus dem im Laufe der Zeit neben dem ersten Webserver namens „CERN httpd“ auch der erste Webbrowser und einige weitere Grundlagen des Webs (wie HTML und HTTP) hervorgingen. Berners-Lee gilt daher heute als Begründer des World Wide Web.

Die Webserver-Technik

Die Software eines HTTP-Servers dient in erster Linie dazu, Daten für die Darstellung von Webinhalten anzubieten. Das Programm kommuniziert hierfür mit einem Webclient (in der Regel ein Webbrowser oder ein Suchmaschinen-Crawler).

Wenn Sie eine Homepage aufrufen möchten, geben Sie in Ihrem Webbrowser die entsprechende Internetadresse ein. Der Browser sendet eine Anfrage an den Webserver, der als Antwort zum Beispiel eine HTML-Seite zurückschickt. Diese kann als statisches Dokument auf dem Host gespeichert sein oder dynamisch erzeugt werden – das heißt, der Webserver muss vor der Antwort Programmcode (etwa in PHP oder Java) ausführen. Der Browser interpretiert die Antwort, was oft weitere Anfragen an den Server nach sich zieht, zum Beispiel nach eingebundenen Bildern oder CSS-Dateien.

Für die Übermittlung wird das Übertragungsprotokoll HTTP genutzt (bzw. dessen verschlüsselte Variante HTTPS), das auf den Netzwerkprotokollen IP und TCP (seltener UDP) beruht. Ein Webserver kann die Inhalte einer Website gleichzeitig an viele verschiedene Rechner bzw. deren Browser ausliefern. Wie viele Nutzeranfragen (Requests) wie schnell bearbeitet werden können, hängt u. a. von der Hardware und Auslastung des Hosts ab. Aber auch die Komplexität der Webinhalte spielt eine Rolle: Dynamische Webinhalte benötigen beispielsweise mehr Ressourcen als statische Inhalte.

Die Wahl des passenden Server-Rechners (und somit auch die Entscheidung, ob dieser virtuell, dediziert oder cloudbasiert ist) beugt einer Webserver-Überlastung vor. Doch selbst wenn Sie einen Server nutzen, der ideal auf Ihre Anforderungen abgestimmt ist, kann es trotzdem noch zu einem Server-Ausfall kommen. Gründe dafür können Hardware-Schäden oder Stromausfälle im Rechenzentrum sein, in dem sich Ihr Host befindet. Auch wenn es selten vorkommt: Bei einer solchen Ausfallzeit (Downtime) des Servers ist eine Website dann komplett vom Netz – zumindest wenn die Website nur auf einem Gerät ohne Anbindung an ein Content Delivery Network (CDN) läuft (was bei kleineren Webauftritten die Regel ist).

Zusätzliche Aufgaben eines Webservers

Auch wenn die Übertragung der Webinhalte ihre primäre Aufgabe ist, bieten viele HTTP-Server-Programme noch weitere Funktionen:

Sicherheit Verschlüsselung der Kommunikation zwischen Webserver und Webclient via HTTPS
Benutzerauthentifizierung HTTP-Authentifizierung für bestimmte Bereiche einer Webanwendung
Weiterleitung Umleitung eines Dokumentaufrufs per Rewrite-Engine
Caching Zwischenspeicherung von dynamischen Dokumenten, um auf Anfragen schneller zu antworten und um einer Webserver-Überlastung vorzubeugen
Zuweisung von Cookies Senden und Verarbeiten von HTTP-Cookies

Ein Host kann neben der Webserver-Software auch noch andere Server-Programme beinhalten – beispielsweise einen FTP-Server für den Datei-Upload oder einen Datenbankserver für dynamische Inhalte (wobei ein professioneller Internetdienstanbieter in aller Regel verschiedene Hardware dafür bereitstellen würde). Generell kann man viele verschiedene Server-Formen für ganz unterschiedliche Zwecke nutzen – neben den genannten sind auch Mailserver, Gameserver oder Proxy-Server verbreitet.

Begriffsbestimmung: Webserver vs. Webhosting

Welche Rolle spielen Webserver innerhalb des Webhostings? Und was genau ist Webhosting überhaupt? Grundsätzlich stellen Webserver immer einen fundamentalen Bestandteil des Webhostings dar. Vor allem Laien fällt die Unterscheidung zwischen den zwei Bezeichnungen aber nicht immer leicht. Wir grenzen die beiden Begriffe im Folgenden voneinander ab.

Als Webhosting (häufig genutzte Kurzform: Hosting) wird die Speicherung und Verfügbarmachung von Webinhalten bezeichnet. Die Dateien einer Website werden hierbei auf einem Webspace (Online-Speicherplatz für Webprojekte) hinterlegt. Der Webspace ist sozusagen die Festplatte, auf der die Webinhalte gespeichert werden – und dieser Speicherplatz muss mit einem Webserver verbunden sein, damit die Inhalte (beispielsweise einer Website) online abrufbar sind.

Einen Host (Webserver-Rechner) und den daran angeschlossenen Webspace erhält man von einem sogenannten (Web-)Hoster. Viele Internetdienstanbieter – auch (Internet-)Provider genannt – wie beispielsweise IONOS treten als Webhoster auf. Falls Sie sich bei einem Webhosting-Dienstleister für einen selbstverwalteten Host entschieden haben, müssen Sie diesen selbst einrichten. Hierfür benötigen Sie ein Webserver-Programm.

Webserver für das Webhosting: Gängige (kostenlose) Webserver-Software

Es existieren zahlreiche Programme, über die Sie einen eigenen Webserver betreiben können. Viele von ihnen erhalten Sie gratis im Internet. Die verwendete HTTP-Server-Software muss selbstverständlich mit dem Betriebssystem des Hosts kompatibel sein. Die meisten Server-Programme für Webinhalte fußen auf Unix bzw. Linux (Apache, Nginx, Tomcat etc.), laufen aber auch auf Windows. Die Ausnahme stellt der Microsoft IIS dar, der nur auf Windows-Servern läuft.

Einige der meistgenutzten Webserver-Programme sind:

  • Apache HTTP Server: Der Apache HTTP Server (oder einfach Apache-Webserver) ist kostenlos und wird permanent auf Open-Source-Basis weiterentwickelt. Das modular aufgebaute Programm läuft auf so gut wie jedem Betriebssystem und ist der am meisten genutzte HTTP-Server. Er eignet sich gut für dynamische Webinhalte: Skriptsprachen wie PHP lassen sich problemlos integrieren, über die CGI-Schnittstelle kann Apache andere Programme ausführen.
    Die recht komplexe Integration von Software wie PHP und MySQL (die man für dynamische Inhalte benötigt) in einen Apache-Webserver lässt sich vereinfachen, indem man Software-Pakete wie XAMPP nutzt – solche Programmzusammenstellungen vereinfachen die Einrichtung stark. Sie beinhalten neben Apache außerdem noch passende Software für Datenbank und diverse Skriptsprachen. Üblicherweise kommen Programmpakete wie XAMPP aber nicht beim professionellen Hosting zum Einsatz, sondern als Entwicklungs- und Testumgebung für eigene Websites.
    In letzter Zeit hat der Apache HTTP Server allerdings im Vergleich mit anderer Webserver-Software in puncto Geschwindigkeit an Boden verloren: Viele Konkurrenzprodukte zeichnen sich inzwischen durch kürzere Antwortzeiten bei der Datenübertragung aus.
  • Apache Tomcat: Hierbei handelt es sich um eine quelloffene, kostenlose Webserver-Software aus dem Java-Umfeld. Wer mit Java serverseitige Webinhalte erzeugen möchte, findet mit Apache Tomcat einen entsprechenden Webcontainer. Außerdem kann er via AJP-Connector in einen anderen Webserver eingegliedert werden (z. B. in den Apache HTTP Server oder Microsoft IIS).
  • nginx: Auch diese Software ist kostenfrei und gleichzeitig mehr als ein gewöhnlicher Webserver – nginx bietet u. a. einen Reverse Proxy, wodurch der HTTP-Server deutlich entlastet wird und somit schneller arbeiten kann. In der Vergangenheit gewann nginx mehr und mehr an Popularität. Weitere Informationen über das Programm bietet unsere nginx-Einführung.
  • Microsoft IIS: Bei Microsoft Internet Information Services (IIS) handelt es sich um ein Server-Software-Paket, zu dem auch ein Webserver gehört. Früher war IIS ein fester Bestandteil der Windows-Server-Systeme – mittlerweile kann bei einigen Windows-Betriebssystemen das Programm bei Bedarf nachinstalliert werden. Wenig überraschend ist die Tatsache, dass man Microsoft IIS nur auf Windows-Servern einsetzen kann.
  • LiteSpeed Web Server: Hierbei handelt es sich um eine HTTP-Server-Software für Linux und Unix, bei der Sie die Wahl zwischen einer Open-Source-Version, einer kostenfreien Standard- sowie einer Enterprise-Variante haben. Der LiteSpeed Web Server besticht vor allem durch seine Schnelligkeit in der Datenübertragung, die wie zu erwarten in der kostenpflichtigen Enterprise-Version am höchsten ist.

Die Administration der HTTP-Server-Programme erfolgt in der Regel über den Fernzugriff von einem anderen Computer. Besonders komfortabel geht das über eine Fernwartungs-Software. Hierbei müssen Sie Ihren Rechner nicht mit dem gleichen Betriebssystem ausstatten, das sich auch auf dem Server Ihres Hosts befindet. Beispielsweise lässt sich mit Plesk – einem der bekanntesten Programme für den Fernzugriff – sowohl von einem Linux- und Unix- als auch von einem Windows-Rechner aus ein Webserver-Programm verwalten. Folglich können Sie z. B. über einen Windows-Heimrechner einen Linux-Server steuern und andersherum.

Passenden Server finden und einen Webserver einrichten

Wenn Sie für Ihre Onlinepräsenz einen Webserver erstellen möchten, benötigen Sie zuerst einmal einen Host mit ausreichend Webspace. Eine der gängigsten Varianten stellt das Anmieten von Server-Ressourcen bei einem Provider dar. Vor allem wer kaum oder gar keine Kenntnisse der Server-Administration besitzt, kann auf Angebote wie Shared Hosting oder Managed (Cloud-)Hosting  zurückgreifen und so seinen persönlichen Webserver einrichten. Im Gegensatz zu einem Server mit Root-Zugriff – bei dem Sie alle Zugriffsrechte, aber auch die komplette Verantwortung für die Server-Sicherheit haben – übernimmt bei einem Managed Server der Hoster einen Großteil der grundlegenden Administration. Hier werden Ihnen Dinge wie Sicherheits- und Software-Updates weitgehend abgenommen; und dennoch können Sie den Server nach Belieben mit Software ausstatten. Bei Shared Hosting müssen Sie sich überhaupt nicht um die Software-Updates kümmern, haben aber ausschließlich Zugriff auf den Webspace und die vom Anbieter zur Verfügung gestellten Konfigurationsmöglichkeiten.

Einen Server mieten Sie in der Regel für eine monatliche Gebühr. Wie hoch diese Kosten sind, hängt von der Performance und dem Umfang der einzelnen Komponenten ab – etwa der Leistungsfähigkeit des Rechners (CPU und RAM), dem Webspace und der Art des Festplattenspeichers (SSD oder HDD). Wer die Kapazität des Webservers beim Hosting flexibel halten möchte, sollte zum Cloud-Hosting greifen. Hier kann zu jedem beliebigen Zeitpunkt die Leistung vieler Komponenten an die aktuellen Anforderungen eines Webprojekts angepasst werden.

Welche Leistung die jeweiligen Host-Komponenten benötigen, ist wiederum von den Anforderungen des Webangebots abhängig: Webprojekte wie ein kleiner Blog oder eine Online-Visitenkarte kommen auch mit günstigen bzw. weniger leistungsstarken Hosting-Paketen bestens aus. Große Onlineportale oder Internetangebote mit vielen rechenaufwendigen Webinhalten hingegen beanspruchen bestimmte Komponenten sehr viel stärker. Des Weiteren benötigen manche Webanwendungen ein höheres Datentransfervolumen als andere: Etwa brauchen Websites, die Download-Inhalte bereithalten, hierfür eine gewisse Schnelligkeit hinsichtlich des Datenverkehrs, damit die Dateiübertragung nicht langsamer als gewöhnlich abläuft. Aber auch wenn Sie auf Ihrer Website viele Dateien wie Videos oder Musik bereitstellen, muss das Traffic-Volumen stimmen, damit es zu keiner Server-Überlastung kommt. Um sich hier abzusichern, können Sie bei den meisten Providern ein Paket mit einer Traffic-Flatrate buchen. Dieses garantiert, dass dem Datenverkehr stets genügend Kapazitäten zur Verfügung stehen.

Wenn Sie den passenden Server gefunden haben, können Sie auf diesem Ihre favorisierte HTTP-Server-Software einrichten. Allerdings gibt es selbst bei der Nutzung eines Managed Servers einige Sicherheitsaspekte, die man beim Webhosting beachten muss.

Webserver-Sicherheit

Wenn der Webserver erstellt und eingerichtet ist, sollten Sie fortan stets darauf achten, dass auf diesem immer alle aktuellen Updates eingespielt sind. Veraltete Versionen bieten Kriminellen und Hackern Angriffsflächen, die es ihnen im schlimmsten Fall ermöglichen, die Kontrolle über Ihren Server zu erlangen. Beim Shared und Managed Hosting kümmert sich in der Regel der Internetprovider um alle Sicherheitsvorkehrungen – ansonsten ist dies jedoch Ihre Aufgabe.

Neben der ständigen Aktualisierung bietet vor allem eine Firewall Schutz vor Übergriffen. Auch die Einrichtung einer demilitarisierten Zone (DMZ) ist sinnvoll. Außerdem gibt es mit Fail2ban ein Framework, das ebenfalls vor unautorisierten Zugriffen schützen kann.

Ein weiterer Grundsatz der Webserver-Sicherheit lautet: Erlauben Sie als Administrator nur das, was für Ihren Server unbedingt nötig ist. Schließen Sie ansonsten alle Ports und beenden Sie jegliche nicht erforderlichen Dienste. Ebenfalls gehört die Vergabe sicherer Passwörter zu den grundlegenden Sicherheitsvorkehrungen bei der Betreuung eines Servers. Bei Fragen und in Notfällen ist eine zuverlässige und qualifizierte Kundenbetreuung sehr viel wert – vor allem weniger erfahrene Administratoren eines Servers können hiervon profitieren.

Wenn Ihr Hoster nicht vollständig für den Schutz Ihres Servers Sorge trägt, sollten Sie ein gewisses Know-how für die Server-Wartung und ein grundlegendes Verständnis für die Funktionsweise eines Hosts besitzen. Sicherlich können Sie sich dieses auch aneignen – dazu bietet sich das Ausprobieren und Lernen mit einem Server in einem geschlossenen Netzwerk an, in dem Sie keine Angriffe von Cyberkriminellen zu befürchten haben.

Exemplarischer Vorgang einer Webserver-Operation

Sobald Ihr HTTP-Server eingerichtet und die Inhalte Ihrer Website darauf übertragen wurden, kann er den Betrieb aufnehmen. Er arbeitet dabei nach dem Client-Server-Modell. Ein Beispiel: Wenn Sie die IONOS-Homepage besuchen möchten und hierfür in Ihrem Browser (dem Client) die Domain www.IONOS.de aufrufen, leiten Sie damit die folgenden Abläufe ein:

  1. Sobald Sie die Eingabe starten, übermittelt Ihr Browser die Internetadresse zuallererst an einen Nameserver (auch DNS-Server genannt). Als Bestandteil des Domain-Name-Systems (DNS) – dem Verzeichnisdienst des Internets – hat ein Nameserver sozusagen Zugriff auf das komplette Adressbuch des Internets. Der alphanumerische Domain-Name (www.IONOS.de) wird daraufhin in eine numerische IP-Adresse (217.160.72.6) umgewandelt und diese zum Browser zurückgeschickt. Nun stellt der Browser eine Anfrage bezüglich der Webseiteninhalte. Dies geschieht, indem der Webbrowser die URL der angeforderten Webseite an die erhaltene IP-Adresse sendet – also denjenigen Webserver kontaktiert, der die Inhalte der Webseite enthält.
  2. Der Webserver beantwortet die Anfrage, indem er ein Dokument der verlangten Webseite zurück an den Browser schickt. Daraufhin sendet der Browser erneut einen Request an den Webserver – diesmal für ein anderes Dokument, das Teil der angeforderten Webpage ist (beispielsweise ein eingebundenes Bild). Dieser Vorgang wiederholt sich so lange, bis alle Einzelteile der Seite übertragen wurden und nun die Webseite in Ihrem Browserfenster dargestellt wird. Wenn Sie nun auf einen Link der IONOS-Homepage klicken, wird eine andere Webseite vom Webserver angefordert. Somit geht der grundsätzliche Prozess – abgesehen von der nun gespeicherten DNS-Anfrage – wieder von vorne los.

Sie fühlen sich gut über die Erstellung Ihres eigenen Webservers informiert und wollen einen Server mieten? Egal ob Dedicated Server, Cloud Server oder Virtuelle Server, IONOS hat für Jeden die optimale Lösung. Entdecken Sie unser Server Portfolio in unserem IONOS Shop.