
Apache unter Windows starten und als Dienst einrichten
httpd.exe, ein paar Schalter und der Dienst läuft. Und was zu tun ist, wenn Port 80 schon belegt ist.
Daniel Weihmann Aktualisiert am · 2 Minuten Lesezeit
Kurz gesagt
Im Ordner bin der Apache-Installation richtet httpd.exe -k install den Dienst ein, httpd.exe -k start startet ihn. Danach antwortet der Server unter http://localhost/. Gesteuert wird er über den Apache Service Monitor, die Diensteverwaltung oder NET START Apache2.4.
Woher bekomme ich Apache für Windows?
Das Apache-Projekt veröffentlicht selbst keine fertigen Programme, nur den Quellcode. Laut der offiziellen Dokumentation gibt es fertige Pakete von Drittanbietern. Genannt werden dort unter anderem Apache Lounge und WampServer. Das Paket in einen Ordner entpacken, etwa C:\Apache24. Liegt es woanders, muss die Angabe ServerRoot in der httpd.conf auf den neuen Ort zeigen.
Wie richte ich Apache als Dienst ein?
- Eingabeaufforderung als AdministratorDie Eingabeaufforderung mit Administratorrechten öffnen und in den Ordner
binwechseln. - Dienst installieren
httpd.exe -k installeingeben. Ohne weitere Angaben heißt der DienstApache2.4und nutztconf\httpd.conf. - Starten
httpd.exe -k startoderNET START Apache2.4eingeben. - TestenIm Browser
http://localhost/aufrufen. Die Standardseite erscheint, wenn alles läuft.
Wer mehrere Apache-Dienste parallel betreibt, gibt jedem einen Namen: httpd.exe -k install -n "MeinDienst", mit eigener Konfigurationsdatei zusätzlich -f "c:\pfad\meine.conf".
Welche Befehle steuern den Dienst?
| Befehl | Wirkung |
|---|---|
httpd.exe -k start | Startet den Dienst |
httpd.exe -k stop | Beendet den Dienst (gleichwertig: -k shutdown) |
httpd.exe -k restart | Neustart, liest die Konfiguration neu ein |
httpd.exe -t | Prüft die Konfiguration auf Fehler |
httpd.exe -k uninstall | Entfernt den Dienst |
Bei einem benannten Dienst kommt jeweils -n "MeinDienst" dazu. Den Autostart regelt der Starttyp in der Windows-Diensteverwaltung.
Kann ich Apache ohne Dienst starten?
Ja. httpd.exe lässt sich auch direkt in einem Konsolenfenster starten, etwa zum Testen. Der Server läuft dann, solange das Fenster offen ist. Für einen Server, der nach jedem Neustart von Windows bereitsteht, ist der Dienst die bessere Wahl.
Was tun, wenn Apache nicht startet?
Häufigster Grund ist ein belegter Port. Apache lauscht standardmäßig auf Port 80. Die Dokumentation nennt andere Webserver, manche Firewalls und sogar Programme wie Skype, die Port 80 belegen können. Entweder das andere Programm beenden oder in der httpd.conf mit Listen einen anderen Port wählen.
Ein zweiter Punkt betrifft Netzlaufwerke: Der Dienst läuft standardmäßig unter dem Systemkonto LocalSystem. Dieses Konto hat keine Rechte auf Freigaben im Netzwerk. Liegen Website-Dateien auf einem Netzlaufwerk, braucht der Dienst ein eigenes Benutzerkonto mit passenden Rechten.
Wer Apache lokal testet und dann Weiterleitungen einrichten will, findet die Grundlagen im Beitrag Domain-Weiterleitung ohne URL-Änderung.
Häufige Fragen
Wo bekomme ich Apache für Windows?
Das Apache-Projekt selbst veröffentlicht nur Quellcode, keine fertigen Windows-Programme. Die Dokumentation verweist auf Drittanbieter mit fertigen Paketen, etwa Apache Lounge, oder auf Komplettpakete wie WampServer.
Wie heißt der Dienst, wenn ich nichts angebe?
Apache2.4. Unter diesem Namen lässt er sich mit NET START Apache2.4 und NET STOP Apache2.4 steuern. Die Konfiguration liegt dann in conf\httpd.conf.
Wie prüfe ich die Konfiguration vor dem Neustart?
Mit httpd.exe -t, bei einem benannten Dienst mit httpd.exe -n "Dienstname" -t. Findet Apache einen Fehler, meldet er die Zeile, und der laufende Server bleibt unberührt.