Ich hatte vor einiger Zeit das Problem, dass meine lokale Entwicklungsumgebung blockiert wurde, da ein anderer Windows-Dienst den Port 80 belegte. NGINX spuckte immer wieder die Fehlermeldung “nginx: [emerg] bind() to 0.0.0.0:80 failed (10013: FormatMessage() error:(15100))” aus.
In Foren wird meist das Programm Skype als möglicher Übeltäter genannt, das von Haus aus Port 80 als alternativen Eingangskanal für Verbindungen festlegt.
Diese Option zu deaktivieren, hat bei mir jedoch nie geholfen. Nach ewiger Suche habe ich dann endlich die Lösung gefunden, die auch für lange Zeit anhielt. Nun hat ein Windows-Update oder eine andere Installation die nötige Einstellung wieder zunichte gemacht, ich hatte die Lösung natürlich wieder vergessen und musste mich erneut auf die Suche machen. Damit mir dies in Zukunft erspart bleibt, schreibe ich eine Blog-Notitz an mich selbst. Und vielleicht hilft es noch einem zweiten bei der Lösung dieses Problems.
Öffne ich den Windows Task-Manager findet sich unter dem Tab “Dienste” der – laut Beschreibung – WWW-Publishingdienst “W3SVC”. Durch Rechtsklick auf die entsprechende Zeile und Klick auf “Anhalten” lässt sich dieser Dienst vorübergehend deaktivieren. Nach einem Neustart steht man jedoch wieder vor dem gleichen Problem. Deshalb sollte man stattdessen den Menüpunkt “Dienste öffnen” in besagtem Kontextmenü auswählen.
In dieser langen Liste aller Dienste findet man den gewünschten bzw. unerwünschten Dienst namens “WWW-Publishingdienst” wieder. Etwas verwirrend, da dies zuvor die Beschreibung war. Doch ein Klick auf die Eigenschaften beweist es – Dienstname: “W3SVC”, Anzeigename: “WWW-Publishingdienst”. Standardmäßig ist der Starttyp als “Automatisch” definiert und der Status müsste mit “Wird ausgeführt” angezeigt werden – ansonsten würde er uns jetzt keine Probleme bereiten. Um ihn zumindest bis auf weiteres loszuwerden, muss man per Rechtsklick auf den Eintrag die Eigenschaften öffnen. Ich schalte den Starttyp auf per Dropdown-Menü auf “Deaktiviert”, setze den Dienststatus auf “Beenden” und speichere die Änderungen per Klick auf “Übernehmen”. Ich starte NGINX neu und siehe da: Kein Gemecker! Die Fehlermeldung ist verschwunden und meine Testseite wird im Browser angezeigt. Meiner Erfahrung nach beeinträchtigt diese Änderung keine anderen Anwendungen. Doch diese Erfahrung muss wohl jeder, je nach Entwicklungsumgebung, für sich machen. Sollte ich jemandem damit geholfen haben, so verewige er sich bitte in den Kommentaren.
Vielen Dank! Hat mein Port-80-Problem bei XAMPP gelöst! :-*
Hi Meises, ich freue mich, dass ich Dir mit dem Beitrag weiterhelfen konnte! Melde Dich, wenn Deine Website online geht.
Vielen vielen Dank ! Du hast mir auch sehr geholfen.
Aber kann man den Port 80 der von W3SVC belegt wird nicht irgendwie auf einen anderen ändern?
Hey Jörg, phantastisch! Ich habe aber keine Möglichkeit gefunden, den Port permanent zu ändern. Auch in der Registry bin ich nicht fündig geworden. Falls Du auf eine dauerhafte Lösung stößt, sag doch bitte bescheid.
Hallo,
die “Lösung” der Änderung des Port bei dem Dienst “steht hier”.
https://support.microsoft.com/de-de/kb/149605
Änderung unter Regedt32.exe mit Beschreibung.
Habe erst mal den Dienst deaktiviert.
Xampp funktioniert wieder unter W10. Nach Update erhebliche Schwierigkeiten, da der Port 80 besetzt wurde.
Jetzt muss ich nur noch schauen, was ich bei Hex50 und 80 Dez ändern darf.
Der Tag ist gerettet 🙂 DANKE
Top! Das motiviert mich doch, nach vier Monaten Pause mal wieder weiter zu bloggen.
Hi Manuel,
Meises says
15. Juni 2015 at 6:27
Vielen Dank! Hat mein Port-80-Problem bei XAMPP gelöst! :-*
=>
=> merci bien – bei mir auch!!! :-))
LG Andreas
Hallo ‘mein Freund’ 😉
vielen Dank für die Lösung, hat mir heute so viel Zeit erspart !!!!
Viele Grüße
Matthias
Da ich selber gestern vor diesem Problem gestanden bin habe ich diesen Lösungsansatz gefunden, und bei mir hat er geholfen:
To open httpd.conf file, click the “Config” button next to Apache “Start” and “Admin” buttons. In the popup menu that opens, click and open httpd.conf
2) Within the httpd.conf file search for “listen”. You’ll find two rows with something like;
#Listen 12.34.56.78:80
Listen 80
Change the port no to a port no. of your choice (e.g. port 1234) like below
#Listen 12.34.56.78:1234
Listen 1234
3) Next, in the same httpd.conf file look for “ServerName localhost:” Set it to the new port no.
ServerName localhost:1234
4) Save and close the httpd.conf file.
5) Now click the Apache config button again and open the “httpd-ssl.conf” file.
6) In the httpd-ssl.conf file, look for “Listen” again. You may find:
Listen 443
Change it to listen on a new port no of your choice. Say like:
Listen 1443
7) In the same httpd-ssl.conf file find another line that says, “”. Change this to your new port no. (like 1443)
7) Also in the same httpd-ssl.conf you can find another line defining the port no. For that look for “ServerName”. you might find something like:
ServerName http://www.example.com:443 or ServerName localhost:433
Change this ServerName to your new port no.
8) Save and close the httpd-ssl.conf file.
9) Finally, there’s just one more place you should change the port no. For that, click and open the “Config” button of your XAMPP Control Panel. Then click the, “Service and Port Settings” button. Within it, click the “Apache” tab and enter and save the new port nos in the “main port” and “SSL port” boxes. Click save and close the config boxes.
That should do the trick. Now “Start” Apache and if everything goes well, your Apache server should start up.
You will also see the Apache Port/s no in the XAMPP control panel has change to the new port IDs you set 🙂
Danke 🙂
Perfekt