Server | Thorsten Eggeling | 1/2026 | 28. November 2025

Webserver Apache optimieren

Apache ist schnell installiert und bereits ohne besondere Konfiguration einsatzbereit. Um alle Möglichkeiten des Webservers zu nutzen, sind jedoch einige Anpassungen zu empfehlen.

Webserver Apache: Nach der Installation kann man die Funktion des Webservers über die URL „http://localhost“ ausprobieren. Der Browser zeigt die Standardseite mit einigen Informationen.

Ein Webserver hat primär die Aufgabe, HTML-Dateien an Browser auszuliefern. In der Praxis wird HTML allerdings meist dynamisch erzeugt, wofür eine Script-Sprache wie PHP und eine Datenbank zum Einsatz kommen. Alles zusammen stellt eine Webanwendung bereit, also ein Programm, das sich im Webbrowser nutzen lässt. In diesem Artikel geht es nur um den Webserver Apache und seine Konfiguration. PHP und Webanwendungen lassen wir außen vor. Tipps dazu lesen Sie im Beitrag ab Seite 46. Apache allein können Sie auf dem eigenen Rechner nutzen, um Erfahrungen mit dem Webserver zu sammeln. Er kann jedoch auch für den Datenaustausch im lokalen Netzwerk dienen.

Der Artikel bezieht sich auf Ubuntu, Linux Mint, Debian und verwandte Distributionen. Bei anderen Linux-Systemen ist die Konfiguration zwar ähnlich, weicht im Detail aber teilweise deutlich ab.

Die Apache-Konfiguration

Direkt nach der Installation ist der Server einsatzbereit und Sie können die Standardseite im Browser über „http://localhost“ aufrufen. Auf anderen Geräten im Netzwerk verwenden Sie „http://[Servername]“. Für den Platzhalter setzen Sie den Namen des Linux-PCs oder seine IP-Adresse ein. Die Startseite mit dem Namen „index.html“ liefert Apache aus dem Verzeichnis „/var/www/html“ aus. Sie zeigt Informationen zu den Aufgaben der Konfigurationsdateien unterhalb von „/etc/apache2“. Die Datei „apache2.conf“ ist die zentrale Konfigurationsdatei, die alle anderen einbindet. In dieser sind nur in Ausnahmefällen Anpassungen nötig.

In der Datei „ports.conf“ steht, auf welchen Ports der Webserver lauscht. Vorkonfigurierte Standardports sind 80 für HTTP und 443 für HTTPS. Das kann man ändern, etwa wenn ein anderer Webserver diese Ports für sich beansprucht (siehe auch Artikel ab Seite 50). Verwenden Sie beispielsweise statt „Listen 80“ die Zeile „Listen 8080“.

Die Dateien unter „/etc/apache2/sites-available“ enthalten die Konfiguration der Websites. Standardmäßig sind „000-default.conf“ (HTTP) und „default-ssl.conf“ (HTTPS) vorhanden. Letztere berücksichtigt Apache jedoch nicht, sondern nur den symbolischen Link im Ordner „/etc/apache2/sites-enabled/000-default.conf“.

Website konfigurieren: Die Datei „000-default.conf“ enthält die Standardkonfiguration. Die Variable „Document Root“ verweist auf den Ordner, aus dem Apache die HTML-Dateien ausliefert.

Die erste Zeile in „000-default.conf“ lautet „<VirtualHost *:80>“. Damit liefert Apache Inhalte auf Port 80 für jede Anfrage an eine gültige URL („*“) aus. Sie können daher „http://localhost“ (am lokalen System) sowie „http://[Servername]“ oder auch die IP-Adresse verwenden. Wenn Sie den Port in der Datei „ports.conf“ geändert haben, müssen Sie dies bei der Adresse berücksichtigen – für unser Beispiel also „http://localhost:8080“. 

Nach Portänderungen ist mit 

sudo systemctl restart apache2

wie bei jeder Konfigurationsänderung ein Neustart des Dienstes erforderlich. 

SSL-Konfiguration aktivieren

Im lokalen Netzwerk ist der Zugriff über „https://“ eigentlich nicht erforderlich, weil die Verschlüsselung hier keinen Gewinn an Sicherheit bewirkt. Wer die SSL-Konfiguration trotzdem verwenden möchte, aktiviert diese mit (zwei Zeilen)

sudo a2ensite default-ssl.conf

sudo systemctl restart apache2

Damit wird der Symlink erstellt und Sie erhalten die Fehlermeldung „Job for apache2.service failed.“ Verwenden Sie

apache2ctl configtest

für genauere Informationen. Apache bemängelt, dass das Kommando „SSLEngine“ nicht verfügbar ist. Die Ursache ist das bisher noch nicht aktivierte SSL-Modul. Dieses laden Sie mit 

sudo a2enmod ssl

und starten Apache danach neu. Ähnlich wie bei den Sites sind die Module im Ordner „/etc/apache2/mods-available“ zu finden, „/etc/apache2/mods-enabled“ enthält Symlinks zu den aktivierten Modulen.

Sie können die Website jetzt auch über „https://localhost“ aufrufen. Da es sich um ein selbst signiertes Zertifikat handelt, erhalten Sie eine Warnung, die Sie in Firefox per Klick auf „Erweitert“ und „Risiko akzeptieren und fortfahren“ übergehen.

Servernamen anpassen

Eine erneute Prüfung mit apache2ctl configtest gibt jetzt immer noch einen Fehler aus, der allerdings eher kosmetischer Natur ist. Die Meldung lautet: „Could not reliably determine the server‘’s fully qualified domain name, using 127.0.1.1“. Das ist nicht verwunderlich, weil Ihr heimischer Linux-Server nicht zu einer Internetdomain gehört. Um die Meldung loszuwerden, erstellen Sie mit

sudo nano /etc/apache2/conf-available/servername.conf

eine Konfigurationsdatei mit dem Inhalt

ServerName [MeinServername]

Den Platzhalter ersetzen Sie durch die Bezeichnung Ihres Linux-PCs. Mit dem Namen alleine ist Apache zufrieden. Sie können aber auch etwas wie „MeinServer.local“ oder „MeinServer.fritz.box“ verwenden, damit es etwas mehr nach einer Internetdomain aussieht. Um die Konfiguration zu aktivieren, verwenden Sie die zwei Zeilen

sudo a2enconf servername

sudo systemctl restart apache2

Hinweis: Zu allen „a2en*“-Befehlen gibt es Gegenstücke, die Symlinks wieder entfernen. Das sind: „a2disconf“, „a2dissite“ und „a2dismod“.

Persönliches Verzeichnis für HTML-Dateien

Aus welchem Ordner Apache die Webseiten ausliefert, ist in der Datei „000-default.conf“ hinter „DocumentRoot“ auf „/var/www/html“ festgelegt. Für eigene Versuche mit HTML-Inhalten ist das unpraktisch, weil Standardbenutzer hier keine Schreibrechte besitzen. Statt die Zugriffsrechte zu ändern, können Sie Apache mit dem Modul „userdir“ für ein persönliches Verzeichnis konfigurieren. Mit 

sudo a2enmod userdir

aktivieren Sie das Modul, gefolgt vom üblichen Neustart des Dienstes:

sudo systemctl restart apache2

Erstellen Sie in Ihrem Home-Verzeichnis den Ordner „public_html“. Darin legen Sie alle Dateien ab, die zu Ihrem Webprojekt gehören. Erstellen Sie die Datei „index.html“ mit dem gewünschten Inhalt. Da Apache mit Konto und Gruppe „www-data“ läuft, müssen Sie den Lesezugriff für „Andere“ auf Ihr Home-Verzeichnis erlauben:

chmod 755 $HOME

Sie erreichen die Seite dann über „http://localhost/~[User]“. Den Platzhalter „[User]“ ersetzen Sie durch Ihren Benutzernamen.

Apache als Dateiserver verwenden

Der Webserver eignet sich optimal für den Dateidownload, weil der Zugriff bequem von jedem Gerät mit Webbrowser aus erfolgen kann. Formate wie MP3 oder MP4 können Browser direkt abspielen. Über den Kontextmenüpunkt „Ziel speichern unter“ laden Sie eine Datei herunter. Bilddateien sowie PDFs zeigt der Browser ebenfalls an. Andere Formate lädt der Browser herunter. Für die Anzeige von Verzeichnisinhalten ist das Modul „autoindex“ zuständig, das standardmäßig aktiviert ist. Es genügt, die Dateien in einen Unterordner von „/var/www/html“ zu kopieren oder einen Symlink darin unterzubringen. Wenn Sie im Home ein persönliches Verzeichnis konfiguriert haben, genügt etwa folgender Link, um dort einen weiteren Ordner zu repräsentieren: 

ln -s ~/Musik ~/public_html

Über die URL „http://[Servername]/~[User]/Musik“ erreichen Sie den Ordner und sehen eine Liste der enthaltenen Ordner und Dateien. Per Klick auf „Name“ oder „Size“ können Sie die Liste umsortieren. Eine Datei mit dem Namen „index.html“ darf nicht in solchen Ordnern liegen, weil diese über die Anzeige des Ordnerinhalts dominiert. 

Dateien streamen oder herunterladen: Apache zeigt den Inhalt von Verzeichnissen an. Unterstützte Mediendateien spielt der Browser direkt ab, andernfalls erfolgt der Download.