Apache ist der Webserver, den ich in meiner lokalen Entwicklungsumgebung hauptsächlich verwende.
Er ist Bestandteil meiner XAMPP-Installation und stellt die lokalen Websites und Webanwendungen im Browser bereit.
Apache wird bei mir über XAMPP betrieben.
Die Installation befindet sich unter:
E:\xampp\apache
Das zentrale Webverzeichnis von XAMPP befindet sich unter:
E:\xampp\htdocs
Dort liegen unter anderem meine lokalen Projekte.
Apache wird normalerweise über das XAMPP Control Panel gestartet und gestoppt.
Dort stehen für Apache unter anderem folgende Funktionen zur Verfügung:
Nach erfolgreichem Start wird Apache im XAMPP Control Panel als laufender Dienst angezeigt.
Die Apache-Konfiguration befindet sich innerhalb des XAMPP-Verzeichnisses.
Eine zentrale Konfigurationsdatei ist:
E:\xampp\apache\conf\httpd.conf
Für VirtualHosts ist insbesondere folgende Datei wichtig:
E:\xampp\apache\conf\extra\httpd-vhosts.conf
Änderungen an der Apache-Konfiguration werden normalerweise erst nach einem Neustart von Apache wirksam.
Nach Änderungen an der Apache-Konfiguration sollte geprüft werden, ob die Konfiguration syntaktisch gültig ist.
Dazu kann im Apache-Verzeichnis ausgeführt werden:
httpd -t
Bei einer gültigen Konfiguration erscheint:
Syntax OK
Nach Änderungen an httpd.conf oder httpd-vhosts.conf zuerst die Konfiguration mit httpd -t prüfen und Apache anschließend neu starten.
VirtualHosts ermöglichen es, lokale Projekte über eigene Domainnamen aufzurufen.
Beispiele aus meiner lokalen Entwicklungsumgebung sind:
rowawiki.local thecruiserblog.local
Die Apache-Konfiguration dafür erfolgt über:
E:\xampp\apache\conf\extra\httpd-vhosts.conf
Zusätzlich müssen die lokalen Domainnamen unter Windows dem eigenen Rechner zugeordnet werden.
Dafür wird die Hosts-Datei verwendet:
C:\Windows\System32\drivers\etc\hosts
Ein Eintrag kann beispielsweise so aussehen:
127.0.0.1 rowawiki.local
Apache verwendet standardmäßig insbesondere folgende Ports:
| Port | Verwendung |
|---|---|
80 | HTTP |
443 | HTTPS |
Kann Apache nicht gestartet werden, sollte deshalb geprüft werden, ob einer dieser Ports bereits von einem anderen Prozess verwendet wird.
Unter Windows kann beispielsweise geprüft werden, welcher Prozess Port 80 verwendet:
netstat -ano | findstr :80
Für Port 443:
netstat -ano | findstr :443
Die angezeigte Prozess-ID kann anschließend dabei helfen, den verursachenden Prozess zu identifizieren.
Wenn Apache im XAMPP Control Panel nicht startet, kommen verschiedene Ursachen infrage.
Dazu gehören beispielsweise:
Ein konkreter Fall trat nach der Verwendung von Local auf.
Ein von Local gestarteter nginx-Prozess lief nach dem Beenden von Local weiter und verhinderte dadurch den Start von Apache.
Die konkrete Erfahrung ist dokumentiert unter:
Bei Problemen mit Apache ist das Fehlerprotokoll eine wichtige Informationsquelle.
Die Apache-Protokolle befinden sich unter:
E:\xampp\apache\logs
Besonders wichtig ist:
E:\xampp\apache\logs\error.log
Dort können Hinweise auf Konfigurationsfehler, fehlgeschlagene Starts oder andere Probleme gefunden werden.
Apache stellt die Webanwendung bereit und arbeitet dabei mit PHP zusammen.
Dadurch können PHP-Anwendungen lokal im Browser ausgeführt werden.
Dazu gehören beispielsweise:
Die PHP-Installation meiner lokalen Umgebung wird über XAMPP bereitgestellt.
Weitere Informationen:
Apache ist nur eine Komponente der gesamten XAMPP-Umgebung.
XAMPP stellt daneben unter anderem PHP und MariaDB bereit.
Die konkrete XAMPP-Installation und deren Verwaltung werden zentral dokumentiert unter:
Apache stellt meine lokalen Websites und Webanwendungen bereit.
Wenn Apache nicht startet, prüfe ich zuerst die Konfiguration, die verwendeten Ports und eventuell noch laufende andere Webserver-Prozesse.