🔧 Port 8000 bereits belegt
🚨 Das Problem
Fehlermeldung: OSError: [Errno 98] Address already in use
Bedeutung: Ein anderer Prozess verwendet bereits Port 8000
Häufige Verursacher: Anderer HTTP-Server, Docker, Node.js, oder vorheriger Python-Server
1Herausfinden, was Port 8000 verwendet
🐧 Linux
sudo netstat -tlnp | grep :8000
oder
sudo lsof -i :8000
🍎 macOS
lsof -i :8000
oder
netstat -an | grep 8000
🪟 Windows
netstat -ano | findstr :8000
oder
netstat -aon | findstr :8000
⚠️ Mögliche Ausgabe:
python 12345 user 3u IPv4 0x1234 0t0 TCP *:8000 (LISTEN)
Die Zahl 12345
ist die Prozess-ID (PID)
2Prozess beenden (falls gefunden)
🔴 Prozess mit PID beenden
kill 12345
Ersetzen Sie 12345
mit der echten PID
💥 Erzwingenes Beenden
kill -9 12345
Falls normales kill
nicht funktioniert
🎯 Alle Python HTTP-Server beenden
pkill -f "python.*http.server"
Beendet alle Python HTTP-Server
3Alternative: Anderen Port verwenden
✅ Einfachste Lösung: Anderen Port nutzen
Verwenden Sie einen freien Port statt 8000:
🔹 Port 8080
python -m http.server 8080
Dann öffnen: http://localhost:8080/index.html
🔹 Port 9000
python -m http.server 9000
Dann öffnen: http://localhost:9000/index.html
🔹 Port 3000
python -m http.server 3000
Dann öffnen: http://localhost:3000/index.html
🔹 Port 8888
python -m http.server 8888
Dann öffnen: http://localhost:8888/index.html
4Freien Port automatisch finden
🤖 Automatische Port-Suche
Lassen Sie Python automatisch einen freien Port finden:
python -m http.server 0
Python wählt automatisch einen freien Port und zeigt ihn an:
Serving HTTP on 0.0.0.0 port 36247 (http://0.0.0.0:36247/) ...
5Schnelle Ein-Zeilen-Lösungen
🚀 Option A: Port 8080
cd /pfad/zu/index.html && python -m http.server 8080
Öffnen: http://localhost:8080/index.html
🚀 Option B: Port 9000
cd /pfad/zu/index.html && python -m http.server 9000
Öffnen: http://localhost:9000/index.html
🚀 Option C: Automatisch
cd /pfad/zu/index.html && python -m http.server
Standard-Port 8000, oder Fehler falls belegt
🚀 Option D: Mit Cleanup
pkill -f http.server; python -m http.server 8000
Beendet alte Server und startet neuen
6Erweiterte Lösungen
📋 PHP Server (falls installiert)
php -S localhost:8080
🟢 Node.js Server (falls installiert)
npx http-server -p 8080
🔥 Live Server (VSCode Extension)
In VSCode: Rechtsklick auf index.html → "Open with Live Server"
🌐 Nginx/Apache
Falls installiert, HTML-Dateien in webroot kopieren
🎯 Empfohlene Lösung
Einfachste Methode:
python -m http.server 8080
Dann im Browser öffnen: http://localhost:8080/index.html
💡 Wichtig:
Nach dem Start des HTTP-Servers müssen Sie Ihre index.html
über den Browser aufrufen,
nicht als Datei öffnen! Verwenden Sie immer die http://localhost:XXXX/
URL.