Datum: | Artikel, Hardware, Software

Damit eine Webseite im Internet erreichbar ist, benötigt man einen speziellen Server für deren Content. Damit dieser auch durchgehend erreichbar ist, muss der betreffende Server permanent online sein. Während die meisten Websiten-Betreiber dafür die Rechenzentren von Internet-Providern nutzen, besitzen große Unternehmen und Organisationen häufig eigenen Webserver, auf denen Sie Ihre Intranet- und Internetinhalte hosten. In diesem Beitrag erfahren Sie, wie ein Webserver funktioniert, welche unterschiedlichen Lösungen es gibt und was Sie in Hinblick auf die Sicherheit unbedingt beachten sollten.

Welche Aufgaben hat ein Webserver?

Ein Webserver ist in erster Linie für die zuverlässige Auslieferung von statischen und dynamischen Inhalten an die anfragenden Clients verantwortlich.

Lässt sich ein Webserver auf jeder beliebigen Plattform realisieren?

Ja, allerdings muss die verwendete Server-Software grundsätzlich kompatibel mit dem Betriebssystem des Hosts sein.

Kann ich einen Webserver auch selbst bauen?

Sie können beispielsweise den Einplatinencomputer Raspberry Pi auf Basis von nginx zu einem Webserver umfunktionieren. Wie das funktioniert, erklären wir Ihnen im letzten Abschnitt dieses Beitrags.

1. Was ist ein Webserver?

Server in Betrieb

Als Webserver bezeichnet man einen Web-Dienst, der die Bestandteile einer Webseite bereitstellt. Häufig wird der Begriff aber auch als Synonym für den eigentlichen Host verwendet.

Der Begriff „Webserver“ bezeichnet per Definition zwei recht unterschiedliche Dinge: Zum einen ist damit ein Web-Dienst gemeint, der die Bestandteile und Informationen einer Webseite bereitstellt und über einen Webbrowser (z.B. Firefox oder Chrome) an einen Client überträgt. In diesem Fall ist der Webserver eine Software, die auf einem entsprechend ausgestatteten Computer oder einem Hosting-Produkt betrieben wird.

Häufig wird der Begriff aber auch als Synonym für die eigentliche Hardware (den sogenannten „Host“) verwendet. Das ist insofern falsch, da diese abhängig von der installierten Software auch als Fileserver, FTP-Server oder gänzlich andere Zwecke verwendet werden kann.

Ein Webserver kann sowohl lokal als auch in Unternehmensnetzwerken eingesetzt werden, das bedeutet, dass die betreffenden Inhalte, abhängig vom gewählten Verwendungszweck, sowohl dezentral als auch weltweit verfügbar sind. Im Internet wird er aber vorwiegend als WWW-Dienst verwendet. Jeder Webserver ist zudem in der Lage, die Inhalte gleichzeitig auf mehreren verschiedenen Rechnern auszuliefern.

2. Wie funktioniert ein Webserver?

Der Webserver arbeitet als „Mittler“ zwischen den Inhalten einer Webseite und dem Client, der diese abruft. Geben Sie eine Internetadresse (z.B. www.wintotal.de) in Ihren Browser ein, dann sendet dieser eine Anfrage an den Nameserver, der wiederum aus dem Domainnamen die zugehörige IP-Adresse ermittelt.

Im Anschluss baut der HTTP-Client des Browsers via TCP (oder ab und an auch per UDP) eine Verbindung zum Webserver auf und stellt an diesen einen Webseiten-Request. Da komplette Internetseiten aus diversen HTML-Bausteinen, Grafiken, Fotos und Videos bestehen, muss für jede Datei eine eigene Anfrage gestellt werden, die der Webserver durch die Übermittlung der entsprechenden Inhalte beantwortet. Dazu schickt der HTTP-Server die angeforderten Dateien an den HTTP-Client, der Sie mithilfe eines Interpreters auf dem Bildschirm darstellt. Hat der Client die komplette Webseite erhalten, wird die TCP-Verbindung wieder geschlossen.

Gut zu wissen: Webserver sind in der Lage, die Webseiten-Inhalte parallel an viele verschiedene Rechner respektive Browser ausliefern. Wie viele Nutzeranfragen (Requests) in welcher Zeit bearbeitet werden können, hängt dabei unter anderem von der eingesetzten Hardware und der Auslastung des Hosts ab.

Die zurückgeschickte HTML-Seite kann dabei entweder statisch auf dem Webserver gespeichert sein oder bei Anfrage dynamisch erzeugt werden. Das bedeutet, dass der Webserver vor der Antwort entsprechenden Programmcode (z.B. Java, Python oder PHP) ausführen muss. Dynamische Webseiten beanspruchen dabei generell mehr Ressourcen als statische Inhalte.

3. Unterschiedliche Lösungen im Vergleich

Experten, die über ein entsprechendes technisches Know-How verfügen, konfigurieren Ihre Server meist selbst und arbeiten dabei mit unterschiedlichen Technologien. Voraussetzung ist selbstverständlich, dass die verwendete Server-Software kompatibel mit dem Betriebssystem des Hosts ist. Wen Sie sich mit der Konfiguration im Detail nicht befassen möchten, können Sie alternativ einen vorkonfigurierten Webserver bei einem Provider im Internet mieten.

Server mit Java, Python oder PHP bei 1und1 IONOS mieten

Bei Anbietern wie Strato oder 1und1 IONOS können Sie alternativ auch vorkonfigurierte Webserver mieten.

Die meisten Webserver-Programme basieren auf Unix oder Linux, können aber auch unter Windows betrieben werden. Eine Ausnahme stellt nur der Microsoft IIS dar, der ausschließlich auf Windows-Servern läuft. Die bekanntesten Anbieter für Webserver-Software sind:

  • Apache HTTP-Server (Open-Source, plattformübergreifend einsetzbar)
  • Apache Tomcat (Open-Source, in andere Webserver z.B. Apache HTTP-Server oder IIS eingliederbar)
  • Microsoft IIS (ausschließlich auf Windows Servern einsetzbar)
  • nginx (kostenlos, auch als Reverse Proxy einsetzbar)
  • LiteSpeed Web Server (für Linux und Unix, als Open-Source oder Enterprise Version verfügbar)

Die Webserver-Administration erfolgt üblicherweise mittels Fernzugriff von einem anderen Computer aus. Dieser muss nicht zwingend mit demselben Betriebssystem ausgestattet sein, wie der Server selbst. Am komfortabelsten funktioniert es mit einer Fernwartungs-Software, zu deren bekanntesten Vertretern Plesk von Obsidian gehört. Damit lässt sich ein Webserver sowohl von einem Windows als auch von einem Linux- oder Unix-Rechner aus verwalten.

4. Webserver und das Thema Sicherheit

Wenn Sie einen Server betreiben, müssen Sie sich auch um die Sicherheit Gedanken machen, denn für diesen existieren im Internet dieselben Gefahren wie für einen „normalen“ PC. Neben der Wahl eines sicheren Betriebssystems gibt es eine Reihe weiterer grundlegender Maßnahmen, die Sie in jedem Fall ergreifen sollten:

  • Halten Sie Ihren Webserver auf Stand und spielen Sie immer die aktuellsten Updates ein. Veraltete Server bieten Angriffsflächen für Hacker und Cyberkriminelle, die im schlimmsten Fall die Kontrolle über das gesamte System erlangen können. Beim Shared und Managed Hosting übernimmt diese Aufgabe normalerweise der betreffende Provider.
  • Installieren Sie das Betriebssystem in der Minimal-Version sowie ausschließlich Software, die Sie auch wirklich benötigen. Beenden Sie nicht erforderliche Dienste und schließen Sie möglichst alle ungenutzten Ports.
  • Vergeben Sie nur minimale Rechte für Nutzer und Anwendungen.
  • Wählen Sie möglichst sichere Passwörter und aktivieren Sie die Firewall.
  • Installieren Sie ein SSL-Zertifikat. Dabei handelt es sich um einen digitalen Datensatz, der einen kryptografischen Schlüssel an die Details einer Organisation bindet und die Authentizität von Personen und Objekten (z.B. beim Login) bestätigt.
  • Überprüfen Sie in regelmäßigen Abständen, ob Änderungen an Programmen oder Diensten vorgenommen wurden.
  • Speichern und überprüfen Sie kontinuierlich die Log- und Protokolldateien.
  • Erstellen Sie regelmäßige Backups, um das System im Falle eines Ausfalls lückenlos wiederherstellen zu können.

5. Der Raspberry Pi als Webserver

5.1. nginx einrichten

Wenn Sie im Besitz eines Raspberry Pi sind, können Sie sich daraus auch selbst einen Webserver basteln. Dafür gibt es zwar verschiedenen Lösungsmöglichkeiten respektive Webserver-Programme, wir entscheiden uns aus Stabilitätsgründen in diesem Beispiel aber für nginx. Für die Installation gehen Sie folgendermaßen vor:

  1. Bringen Sie Ihren Raspberry Pi als Erstes auf den neuesten Stand. Führen Sie dazu die folgenden Befehle aus:
sudo apt-get update

sudo apt-get upgrade
  1. Installieren Sie anschließend das Webserver-Paket über
sudo apt-get install nginx
  1. Starten Sie den Server über den Befehl
sudo /etc/init.d/nginx start
  1. Sie können nun die von nginx generierte Testseite aufrufen. Öffnen Sie dazu den Browser Ihres Raspberry Pi und geben Sie
http://localhost/

ein.

Tipp: Um von einem anderen Rechner im Netzwerk auf die Testseite zuzugreifen, geben Sie in den Browser die Adresse http://IP-Adresse-des-Raspberry/ ein. Die IP-Adresse Ihres Raspi können Sie über die Konsole mithilfe des Befehles „hostname -l“ ermitteln.

5.2. PHP installieren

Damit Ihr Webserver auch in der Lage ist, dynamische Webseiten bereitzustellen, müssen Sie im nächsten Schritt PHP installieren:

  1. Installieren Sie das PHP-Paket über den Befehl
sudo apt-get install php5-fpm
  1. Aktiveren Sie nun PHP in nginx. Wechseln Sie dazu in das nginx-Verzeichnis und öffnen Sie die Konfigurationsseite im NANO-Editor:
cd /etc/nginx

sudo nano sites-enabled/default
  1. Ersetzen Sie im Dokument
index index.html index.htm

durch

index index.php index.html index.htm
  1. Suchen Sie weiter unten in der Datei den Eintrag
# pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000

und entfernen Sie die Raute bei den folgenden sechs Zeilen:

location ~ \.php$ {

fastcgi_split_path_info ^(.+\.php)(/.+)$;

fastcgi_pass unix:/var/run/php5-fpm.sock;

fastcgi_index index.php;

include fastcgi_params;

}
  1. Speichern Sie die Konfiguration und starten Sie nginx neu:
sudo /etc/init.d/nginx reload
  1. Navigieren Sie zum Ordner mit der Standard-Webseite, indem Sie in die Konsole
cd /usr/share/nginx/www/

eingeben und ersetzen Sie dort die vorhandene „index.html“ durch „index.php“. Anschließend können Sie Letztere mit den gewünschten Inhalten füllen.

73 Bewertungen

1 Stern2 Sterne3 Sterne4 Sterne5 Sterne Ø 3,70
Einfach erklärt: Was ist ein Webserver?
Loading...

Hinterlasse eine Antwort

(wird nicht veröffentlicht)

Nutzungsrichtlinien beachten