Download
Source und Doku gibt es bei https://httpd.apache.org
Windows Binaries gibt es z. B. bei https://www.apachelounge.com/download/
Für die Version 2.4.59 für 64bit z. B.
https://www.apachelounge.com/download/VS17/binaries/httpd-2.4.59-240404-win64-VS17.zip
Installation
Es gibt kein setup.exe Programm. Das heruntergeladene Zip File enthält alle notwendigen Dateien und hat bereits OpenSSL (für https) integriert.
Die ausführbare Datei httpd.exe liegt im Verzeichnis Apache24/bin.
Vor dem ersten Start muss die Konfigurationsdatei httpd.conf welche im Verzeichnis Apache24/conf liegt angepaßt werden.
In unserem Fall muss das Server Root Verzeichnis geändert werden (hier liegt der Apache Webserver unter C:\Tools
Define SRVROOT „c:/Tools/httpd/Apache24“
Danach kann der Webserver zum Test mal über die Kommandozeile gestartet werden (beenden mit Strg+C).
C:\Tools\httpd\Apache24\bin> httpd.exe
Browser starten und mit https://localhost/ sollte die Apache Test Seite erscheinen. Funktioniert alles kann der Apache mit folgenden Kommando als Dienst installiert werden (nur wenn die Shell mit Adminrechten gestartet wurde):
httpd -k install
Der neue Dienst kann über Windows-Verwaltungsprogramme/Dienste oder über das Shell Kommando httpd -k start gestartet werden.
httpd -k stop
stoppt
httpd -k restart
restartet
httpd -k uninstall
deinstalliert
httpd -v und httpd -V
gibt die Version und -V mehr Infos aus
Konfiguration
Die Webseiten liegen unter Apache24\htdocs
SSL Konfiguration
Die Konfiguration zu allen SSL Einstellungen befindet sich in der Datei Apache24\conf\extra\httpd-ahssl.conf.
Hier werden die zu verwendeten Zertifikate, Protokolle und Cipher definiert.
Im Abschnitt <VirtualHost _default_:443> wird der Servername, das öffentliche Zertifikat, der private Key und wenn nötig ein Intermediate Zertifkat hintelegt:
SSLEngine on
ServerName srv01.nohack.de:443
SSLCertificateFile "${SRVROOT}/conf/ssl/cert.pem"
SSLCertificateKeyFile "${SRVROOT}/conf/ssl/privkey.pem"
SSLCACertificateFile "${SRVROOT}/conf/ssl/ca-bundle.pem"
Die SSL Konfiguration kann über den Qualys SSL Server Test geprüft werden:
https://www.ssllabs.com/ssltest//index.html
Lösungen bei Problemen
Läuft der apache,
herausfinden was auf Port 80 (http)
oder Port 443 (https) läuft
So wird die Prozess ID angezeigt (letzte Spalte)
netstat -ano | findstr :80
Folgendes zeigt das Programm zum Prozess an:
tasklist /FI „PID eq 4436“ /FO TABLE
Den Task killen
taskkill /pid 4436 /f