web-dev-qa-db-de.com

Port 80 wird von SYSTEM (PID 4) verwendet. Was ist das?

Ich versuche, Port 80 für meinen Anwendungsserver zu verwenden, aber wenn ich netstat -aon durchführe, bekomme ich:

TCP 0.0.0.0:80 0.0.0.0:0 LISTENING 4

Wenn ich den Prozess im Task-Manager nachsehe, zeigt er an, dass PID 4SYSTEM ist. Keine Erweiterung ... nichts. Nur "SYSTEM". Was ist denn hier los?

Ich habe Angst, diesen Prozess zu beenden. Was mache ich?


UPDATE:

Ich habe dieses Problem gelöst durch eine weitere Stack Overflow-Frage , die die Lösung hatte, IIS dazu zu bringen, Port 80 nicht länger auf eine angegebene IP-Adresse zu warten.

294
GiH

die IP-Adresse lautet 0.0.0.0, state = LISTENING: bedeutet, dass Port 80 alle Schnittstellen überwacht (nicht verwendet).

So lesen Sie die NETSTAT-AN-Ergebnisse:

30
manji

Ein neuer Dienst namens "Web Deployment Agent-Dienst" (MsDepSvc) kann auch "System" mit PID = 4 auslösen, um Port 80 zu überwachen.

271
Antony

Versuchen Sie auch, "SQL Server Reporting Services (MSSQLSERVER)" zu stoppen, das anscheinend auf 80 eingestellt ist. Ich habe das getan und Port 80 freigegeben. PID identifizierte den Schuldigen als "System", aber anscheinend kann System mehrere Dinge bedeuten.

227
infocyde

Es gibt viele Dienste, die Port 80 unter Windows abhören können. 

Glücklicherweise können Sie sie alle mit einem einfachen Konsolenbefehl erkennen und stoppen:

NET stop HTTP

Wenn Sie es starten, erhalten Sie zuerst eine Liste: enter image description here

Um dieses Problem in Zukunft zu vermeiden, gehen Sie zu Lokale Dienste und Deaktivieren Sie die aufgeführten Dienste .

N.B. - Einige Dienste werden sofort neu gestartet, nur ein paar Mal 'NET stop HTTP' ausführen.

212
Anton Purin

Ich hatte das gleiche Problem. Behebung des Problems durch Stoppen des WWW-Publishingdienstes unter laufenden Diensten.

83
Jules Colle

Es hört sich an, als ob IIS Port 80 auf HTTP-Anforderungen überwacht. 

Stoppen Sie IIS, indem Sie in Systemsteuerung/Verwaltung/Internetinformationsdienste mit der rechten Maustaste auf Standardwebsite klicken. Klicken Sie im Popup-Menü auf die Option Beenden, und prüfen Sie, ob der Listener an Port 80 gelöscht wurde.

25
Robert Harvey

Das funktioniert für mich:

  1. Klicken Sie mit der rechten Maustaste auf Arbeitsplatz .
  2. Wählen Sie Manage .
  3. Doppelklicken Sie auf Dienste und Anwendungen .
  4. Doppelklicken Sie dann auf Services .
  5. Klicken Sie mit der rechten Maustaste auf " World Wide Web Publishing Service ".
  6. Wählen Sie Stop .
23
Eng.Fouad

Ich habe herausgefunden, dass "SQL Server Reporting Services (MSSQLSERVER)" automatisch gestartet wird und Port 80 überwacht.

Ich hoffe das hilft.

O

21
Omeriko

Getestete Arbeitslösung: (Windows 10)

Es gibt viele Gründe dafür, die eine Ursache/Lösung, die ich empfehle, ist:

ÖFFNEN SIE IHREN WINDOW-BEFEHL MIT ADMINISTRATOR VORHERIGEN DANN:

net stop http /y

die oben genannten werden zustimmen, um den http-Dienst zu beenden:

sc config http start= disabled

der oben beschriebene Dienst wird standardmäßig so konfiguriert, dass er deaktiviert wird

WENN DIESE LÖSUNG NICHT FUNKTIONIERT, FINDEN SIE IHREN FALL HIER:

QUELLE: http://www.devside.net/wamp-server/opening-up-port-80-for-Apache-to-use-on-windows

Starten Sie Ihren Web-Server/XAMPP/Apache neu und fertig.


Wenn Sie den Standardwert erneut aktivieren müssen, ist hier der Befehl sc config HTTP start= demand die Erklärungsquelle ist hier http://servicedefaults.com/10/http/

16
Dung

Das Problem ist, wie man es befreien kann, einfach benutzen

net stop http

https://stackoverflow.com/a/16243333/777982

11
Hammad Khan

Ein anderer Dienst, der den Port 80 belegen könnte, ist BranchCache

services.msc zeigt es als "BranchCache"

oder verwenden Sie den Befehl net , um den Dienst zu stoppen

net stop PeerDistSvc

Update:  

PeerDistSvc ist ein Dienst hinter svhost.exe, um den Typ der svhost-Dienste anzuzeigen

tasklist/svc/fi "bildname eq svchost.exe"

8
seizu

Ich wusste, dass diese Antworten richtig waren, aber meine services.msc zeigte die Services nicht an, jedoch hat dies den Trick:

sc stop "MsDepSvc" 
sc config "MsDepSvc" start= disabled 
7
isJustMe

Ich habe dieses Problem heute gerade bekommen, da es auftauchte, nachdem Norton einen Neustart angefordert hatte. Ich gab Norton die Schuld.
Aber es war nicht Norton, ich habe Norton entfernt, neu gestartet -> Problem immer noch da.

netstat -nao zeigte, dass PID 4 meine Port 80-Verbindung besaß.

Ich ging dann zur Systemsteuerung, dann "Windows-Funktionen aktivieren oder deaktivieren" und deaktivierte dann Internetinformationsdienste.
Nach dem Neustart ist das Problem behoben.
Mein xampp-Server läuft jetzt einwandfrei.

Ich erinnere mich nicht, dass ich IIS überhaupt eingeschaltet habe. Ich war viele Monate gelaufen, bevor das passierte. Ich weiß immer noch nicht, was es überhaupt verursacht hat. Möglicherweise wurde ein früheres Windows-Update aktiviert, und mein Neustart hat es aktiviert. Ich weiß es nicht.

4
godzilla

Ich hatte genau dieses Problem, nur dass ich IIS noch nie verwendet habe. Während ich einen anderen Systemfehler behebte, hatte ich den Apache-Dienst auf manuellen Start gesetzt, um die Komplexität meines Systems zu reduzieren. Nachdem ich den anderen Fehler behoben hatte, wurde Apache nicht gestartet. Ich machte eine Weile, aber alles, was ich brauchte, war, Apache wieder auf automatischen Start zu setzen: Start> Verwaltung> Dienste.

Wenn Apache auf diese Weise startet, beansprucht er offenbar Port 80, bevor der SYSTEM-Prozess das kann.

jemand. Mein gesamtes Googeln stellte sich heraus, dass "Ich kann nicht IIS" und Apache auf derselben Maschine haben. das ist für den anderen ein Prozent von uns.

3
changokun

Wenn Sie ein Razer-Produkt verwenden und die Razer Synapse-Software auf Ihrem PC installieren, blockiert dies auch den Port 80. 

Es ist nicht im Befehl netstat enthalten, daher kann ich es nicht beheben. Da in der Software viele Dienste enthalten sind, kann ich nicht analysieren, welche den Port blockiert. Nach der Deinstallation des Razer Synapse kann ich den Apache-Server unter Windows 10 erneut starten.

2
maurisrx

Für mich funktionierte es nach dem Stoppen des Web Deployment Agent Service.

2
danpop

Versuchen Sie es mit netstat -b, was hoffentlich etwas Licht in die Situation bringt (zeigt, welche .exe den Port verwendet). Viel Glück.

2
Jon Onstott

Dieser Prozess funktioniert für mich:

  1. Klicken Sie mit der rechten Maustaste auf Arbeitsplatz.
  2. Wählen Sie Verwalten aus.
  3. Doppelklicken Sie auf Dienste und Anwendungen.
  4. Doppelklicken Sie dann auf Dienste.
  5. Klicken Sie mit der rechten Maustaste auf "World Wide Web Publishing Service".
  6. Wählen Sie Stopp
  7. Starten Sie XAMPP neu
2
Manideep

BranchCache war mein Problem. Mein Vorsatz war, Powershell als Administrator auszuführen und Folgendes auszuführen:

Disable-BC -Force

Referenz: https://docs.Microsoft.com/en-us/powershell/module/branchcache/disable-bc?view=win10-ps

1

Nichts davon hat für mich gearbeitet. Ich musste zu einer Superuser-Frage gehen: https://superuser.com/questions/352017/pid4-using-port-80


Wenn es sich um einen Systemprozess handelt (PID 4), müssen Sie den HTTP.sys-Treiber deaktivieren, der bei Bedarf von einem anderen Dienst gestartet wird, z. B. Windows Remote Management oder Print Spooler unter Windows 7 oder 2008.

Es gibt zwei Möglichkeiten zum Deaktivieren, aber die erste ist sicherer:

1.

Gehen Sie zum Geräte-Manager, wählen Sie „Ausgeblendete Geräte anzeigen“ aus dem Menü/der Ansicht aus, gehen Sie zu „Nicht-Plug & Play-Treiber“/HTTP, doppelklicken Sie darauf, um es zu deaktivieren (oder setzen Sie es auf manuell, einige Dienste hängen davon ab).

Starten Sie neu und verwenden Sie netstat -nao | find ":80", um zu prüfen, ob 80 noch verwendet wird.


Dies ist derjenige, der für mich gearbeitet hat!

1
jason.zissman

Ich sah mich nach PID 4 um und kam zu dieser Frage. Von dieser Antwort und einem Blog-Post habe ich gedacht, dass alles, was mit PID 4 zu tun hat, wahrscheinlich ein Windows-Dienst ist, so dass Sie in services.msc nach den relevanten Diensten suchen möchten.

Dieser Prozess wird auch von System ausgeführt, das als weiterer "angemeldeter" Benutzer betrachtet wird.

1
icedwater

Dies würde die PID-Seite nicht erklären, aber wenn Sie Skype ausführen, verwendet es Port 80 aus irgendeinem Grund.

1
davidtbernal

In meinem Fall ist dies nach der Installation von Microsoft Web Matrix der Fall. Durch die Deinstallation dieses Papierkorbs zusammen mit "Microsoft Web Deploy" wurde das Problem behoben.

1
this.lau_
1

Ich hatte das gleiche Problem und es lag an IIS, das auf dem Server ausgeführt wird. Sie können es mit dem IIS - Manager stoppen, falls dies der Fall ist.

1

PID = 4 wird im Task-Manager nicht angezeigt, auch wenn "Prozesse von allen Benutzern anzeigen" markiert ist. Nun, es gibt nur einen Benutzer.

Netstat -b zeigt jedoch mehrere Verbindungen mit derselben PID = 4, die auf diesem Computer Folgendes anzeigen.

enter image description here

Ich habe nur diejenigen ausgewählt, die sich auf das Protokoll TCP beziehen.

Dies wurde während der Fehlersuche IIS erworben, die nach dem Ausprobieren vieler anderer nicht gestartet wurde. Ich denke nicht, dass Sie diesen Prozess stoppen sollten.

0
user2063329

Dies kann sehr einfach durch die folgenden fünf Schritte sein:

  1. Öffnen Sie Dienste
  2. Rechtsklick auf World Wide Web Publishing Service
  3. Klicken Sie aufSTOP

So verhindern Sie dieses Problem in Zukunft:

  1. Gehe zu Eigenschaften
  2. Starttyp ändern in Manuell

Viola du bist gut zu gehen!

0
Arun Joshla

Ich habe den WWW-Publishing-Dienst gestoppt und dann hat es funktioniert.

0
KnuturO

typ netstat -a -n -b -o |more

wenn Sie World Wide Web Publishing Service stoppen, hilft das

dann überprüfen Sie in IIS manager die Einstellungen für bindings jeder Site, indem Sie eine Site auswählen und auf der Seitenleiste auf die Bindung klicken. Ändern Sie dann Port 80, falls erforderlich.

0
Shimon Doodkin

Für mich musste ich "Citrix Virtual Desktop Agent" auf meiner VM deinstallieren

0
Jerinaw

Ich bin gerade zum Service gegangen und habe den Web Deployment Agent gestoppt

0
Jesse Mwangi