> For the complete documentation index, see [llms.txt](https://docs.instantroot.de/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.instantroot.de/kvm-server/windows/apache-unter-windows-installieren.md).

# Apache unter Windows installieren

Apache ist ein Webserver. Mit Apache kannst du Webseiten oder Webanwendungen über deinen Windows Server erreichbar machen.

In diesem Artikel zeigen wir dir, wie du Apache unter Windows installierst, startest und prüfst, ob der Webserver erreichbar ist.

### Voraussetzungen

Du benötigst:

* einen Windows Server
* Zugriff per Remote Desktop
* Administratorrechte
* eine aktive Internetverbindung
* eine öffentliche IP-Adresse oder Domain, wenn die Webseite später von außen erreichbar sein soll

### Mit dem Windows Server verbinden

Verbinde dich zuerst per Remote Desktop mit deinem Windows Server.

1. Öffne auf deinem Computer die Remotedesktopverbindung.
2. Gib die IP-Adresse deines Servers ein.
3. Melde dich mit dem Administrator-Benutzer an.
4. Öffne den Desktop des Servers.

### Apache für Windows herunterladen

Apache wird unter Windows häufig über vorkompilierte Pakete installiert.

Eine bekannte Quelle für Apache-Builds unter Windows ist Apache Lounge.

Öffne im Browser deines Windows Servers:

`https://www.apachelounge.com/download/`

Lade dort die aktuelle Apache-Version für Windows herunter.

Achte darauf, die passende Version für dein System zu wählen. In den meisten Fällen benötigst du die 64-Bit-Version.

### Visual C++ Redistributable installieren

Apache für Windows benötigt häufig das Microsoft Visual C++ Redistributable.

Wenn Apache nicht startet oder eine DLL-Fehlermeldung erscheint, fehlt diese Komponente oft.

Lade das aktuelle Visual C++ Redistributable von Microsoft herunter und installiere es.

Für 64-Bit-Systeme benötigst du in der Regel die x64-Version.

### Apache entpacken

Nach dem Download erhältst du eine ZIP-Datei.

1. Öffne den Download-Ordner.
2. Entpacke die ZIP-Datei.
3. Verschiebe den Ordner `Apache24` nach `C:\`.

Der Apache-Pfad sollte danach so aussehen:

`C:\Apache24`

Dieser Pfad ist wichtig, weil viele Standardkonfigurationen davon ausgehen.

### Apache-Konfiguration prüfen

Öffne die Apache-Konfiguration.

Datei:

`C:\Apache24\conf\httpd.conf`

Du kannst die Datei mit dem Editor oder einem anderen Texteditor öffnen.

Prüfe folgende Zeile:

`Define SRVROOT "c:/Apache24"`

Wenn Apache unter `C:\Apache24` liegt, kann diese Einstellung so bleiben.

Prüfe außerdem, ob Apache auf Port `80` hört:

`Listen 80`

Port `80` ist der Standardport für HTTP.

### Apache testen

Öffne die Eingabeaufforderung als Administrator.

Wechsle in den Apache-Ordner:

`cd C:\Apache24\bin`

Teste die Konfiguration:

`httpd.exe -t`

Wenn alles korrekt ist, sollte folgende Meldung erscheinen:

`Syntax OK`

Wenn eine Fehlermeldung erscheint, prüfe den angegebenen Pfad oder die genannte Zeile in der Konfiguration.

### Apache manuell starten

Du kannst Apache testweise manuell starten.

Befehl:

`httpd.exe`

Wenn keine Fehlermeldung erscheint, läuft Apache im Vordergrund.

Öffne auf dem Server einen Browser und rufe auf:

`http://localhost`

Wenn Apache funktioniert, erscheint eine Testseite oder eine Meldung wie:

`It works!`

Zum Beenden kannst du das Fenster der Eingabeaufforderung schließen oder den Prozess abbrechen.

### Apache als Windows-Dienst installieren

Damit Apache automatisch mit Windows startet, solltest du ihn als Dienst installieren.

Öffne die Eingabeaufforderung als Administrator und wechsle in den Apache-Ordner:

`cd C:\Apache24\bin`

Installiere Apache als Dienst:

`httpd.exe -k install`

Danach kannst du Apache starten:

`httpd.exe -k start`

Apache kann anschließend über die Windows-Dienste verwaltet werden.

### Apache-Dienst verwalten

Du kannst Apache über die Eingabeaufforderung steuern.

Apache starten:

`httpd.exe -k start`

Apache stoppen:

`httpd.exe -k stop`

Apache neustarten:

`httpd.exe -k restart`

Apache-Dienst entfernen:

`httpd.exe -k uninstall`

Alternativ kannst du die Windows-Dienste öffnen:

1. Drücke `Windows-Taste + R`.
2. Gib `services.msc` ein.
3. Suche nach **Apache2.4**.
4. Starte, stoppe oder starte den Dienst neu.

### Windows Firewall freigeben

Damit Apache von außen erreichbar ist, muss Port `80` in der Windows Firewall erlaubt sein.

1. Öffne die Windows Defender Firewall.
2. Klicke auf **Erweiterte Einstellungen**.
3. Öffne **Eingehende Regeln**.
4. Klicke auf **Neue Regel**.
5. Wähle **Port**.
6. Wähle **TCP**.
7. Trage `80` ein.
8. Wähle **Verbindung zulassen**.
9. Wähle die passenden Profile.
10. Vergib einen Namen, zum Beispiel `Apache HTTP`.
11. Speichere die Regel.

Wenn du später HTTPS verwendest, musst du zusätzlich Port `443` freigeben.

### Erreichbarkeit prüfen

Rufe im Browser deines Servers auf:

`http://localhost`

Danach kannst du von deinem eigenen Computer die Server-IP aufrufen:

`http://SERVER-IP`

Ersetze `SERVER-IP` durch die IP-Adresse deines Servers.

Wenn Apache erreichbar ist, sollte die Apache-Testseite angezeigt werden.

### Webseiten-Dateien ablegen

Die Standard-Webseite liegt bei Apache unter Windows normalerweise in folgendem Ordner:

`C:\Apache24\htdocs`

Dort kannst du deine Webseite ablegen.

Beispiel:

`C:\Apache24\htdocs\index.html`

Wenn du diese Datei bearbeitest, ändert sich die Startseite, die unter `http://SERVER-IP` angezeigt wird.

### Eigene Startseite erstellen

Öffne den Ordner:

`C:\Apache24\htdocs`

Erstelle oder bearbeite die Datei:

`index.html`

Beispielinhalt:

`<h1>Meine Webseite funktioniert</h1>`

Rufe danach im Browser auf:

`http://localhost`

oder:

`http://SERVER-IP`

### Domain mit Apache verbinden

Wenn du eine Domain nutzen möchtest, muss die Domain per DNS auf die IP-Adresse deines Servers zeigen.

Dafür verwendest du in der Regel einen A-Record.

Beispiel:

| Typ | Name  | Ziel        |
| --- | ----- | ----------- |
| A   | `@`   | `SERVER-IP` |
| A   | `www` | `SERVER-IP` |

DNS-Änderungen können einige Minuten bis mehrere Stunden dauern.

### HTTPS einrichten

Für HTTPS benötigst du ein SSL-Zertifikat.

Unter Windows kann die Einrichtung je nach gewünschter Methode unterschiedlich sein. Häufig wird dafür ein ACME-Client wie win-acme verwendet.

HTTPS benötigt Port `443`.

Bevor du HTTPS einrichtest, sollte Apache über HTTP bereits korrekt erreichbar sein.

### Häufige Probleme

#### Apache startet nicht

Prüfe zuerst die Konfiguration.

Befehl:

`C:\Apache24\bin\httpd.exe -t`

Häufige Ursachen:

* falscher Apache-Pfad
* fehlendes Visual C++ Redistributable
* Port `80` ist bereits belegt
* Fehler in der Datei `httpd.conf`
* fehlende Administratorrechte

#### Port 80 ist bereits belegt

Wenn Apache nicht startet, weil Port `80` bereits verwendet wird, läuft wahrscheinlich ein anderer Webserver oder Dienst auf diesem Port.

Prüfe die Portbelegung in der Eingabeaufforderung:

`netstat -ano | findstr :80`

Danach kannst du im Task-Manager anhand der Prozess-ID prüfen, welcher Prozess den Port verwendet.

Typische Ursachen sind:

* IIS
* anderer Webserver
* lokale Entwicklungsumgebung
* bereits laufende Apache-Instanz

#### Webseite ist nur lokal erreichbar

Wenn `http://localhost` funktioniert, aber `http://SERVER-IP` nicht, liegt das Problem meistens an der Firewall oder Netzwerkfreigabe.

Prüfe:

* Windows Firewall erlaubt Port `80`
* Apache läuft
* Server-IP ist korrekt
* keine zusätzliche Firewall blockiert den Zugriff
* der Dienst hört auf der richtigen Adresse

#### Fehler 403 Forbidden

Ein 403-Fehler bedeutet, dass Apache den Zugriff verweigert.

Mögliche Ursachen:

* falsche Dateirechte
* fehlende `index.html`
* falsche Directory-Konfiguration
* Zugriff in Apache-Konfiguration blockiert

Prüfe die Apache-Konfiguration und den Inhalt des Ordners `htdocs`.

#### Fehler 404 Not Found

Ein 404-Fehler bedeutet, dass die angeforderte Datei nicht gefunden wurde.

Prüfe:

* liegt die Datei im richtigen Ordner?
* ist der Dateiname korrekt?
* wurde die richtige URL aufgerufen?
* gibt es eine `index.html` oder `index.php`?

#### Änderungen werden nicht angezeigt

Wenn Änderungen an der Webseite nicht sichtbar sind, prüfe:

* Browser-Cache
* richtige Datei bearbeitet
* Datei im richtigen Ordner gespeichert
* Apache bei Konfigurationsänderungen neu gestartet

Apache neu starten:

`C:\Apache24\bin\httpd.exe -k restart`

### Apache deinstallieren

Wenn du Apache entfernen möchtest, stoppe zuerst den Dienst.

Befehl:

`C:\Apache24\bin\httpd.exe -k stop`

Entferne danach den Dienst:

`C:\Apache24\bin\httpd.exe -k uninstall`

Anschließend kannst du den Ordner löschen:

`C:\Apache24`
