我正在尝试将端口80用于我的应用程序服务器,但是当我执行netstat -aon
时,我得到:
TCP 0.0.0.0:80 0.0.0.0:0 LISTENING 4
当我在任务管理器中查找过程时,它显示PID 4
是SYSTEM
,就是这样。没有延期......没什么。只是“SYSTEM
”。这里发生了什么?
我害怕结束这个过程,我该怎么办?
更新:
我通过another Stack Overflow question解决了这个问题,它有解决方案让IIS停止在端口80上侦听指定的IP地址。
IP地址为0.0.0.0,state = LISTENING:表示端口80正在侦听所有接口(未使用)
另一个可以占用端口80的服务是BranchCache
services.msc显示为“BranchCache”
或者使用net命令来停止服务
网站停止PeerDistSvc
更新:
PeerDistSvc是svchost.exe背后的服务,用于查看svchost服务类型
tasklist / svc / fi“imagename eq svchost.exe”
我知道这些答案是正确的,但我的services.msc没有显示服务,但是这样做了诀窍:
sc stop "MsDepSvc"
sc config "MsDepSvc" start= disabled
我今天刚遇到这个问题,因为它在诺顿请求重启后出现了我责备诺顿。 但它不是诺顿,我删除了诺顿,重新启动 - >问题仍然存在。
netstat -nao显示PID 4拥有我的端口80连接。
然后我转到控制面板,然后“打开或关闭Windows功能”,然后取消选中Internet信息服务。 重新启动,问题消失了。 我的xampp服务器现在运行正常。
我永远不会记得首先打开IIS。在这件事发生之前,我已经跑了好几个月。我仍然不知道是什么原因造成的。也许以前的Windows更新启用了iis,我的重启启用了它,我不知道。
我有同样的问题,除了我从未使用过IIS。当我修复另一个系统错误时,我已经将apache服务设置为手动启动,希望降低系统的复杂性。在我修复了另一个bug后,apache无法启动。我有一段时间了,但只需将apache设置回自动启动:开始>管理工具>服务。
显然,当Apache以这种方式启动时,它会在SYSTEM进程可以之前声明端口80。
某人我所有的谷歌搜索都出现了“无法在同一台机器上安装IIS和Apache”。这是我们其他百分之一的人。
尝试使用netstat -b,这可能会对情况有所了解(显示.exe正在使用该端口)。祝好运。
对我来说,它在停止Web部署代理服务后起作用。
如果您使用Razer产品并在PC上安装Razer Synapse软件,它也会阻塞端口80。
它不包含在netstat
命令中,因此我无法对其进行故障排除。由于软件中包含许多服务,我无法分析阻塞端口的服务。卸载Razer Synapse后,我可以在Windows 10上再次启动Apache服务器。
这个过程对我有用:
这不能解释PID方面的问题,但是如果你运行Skype,它会因为某种原因喜欢使用端口80。
名为“Web部署代理服务”(MsDepSvc)的新服务还可以触发PID = 4的“系统”以侦听端口80。
就我而言,它发生在安装Microsoft Web Matrix之后。卸载此垃圾与“Microsoft Web Deploy”一起解决了该问题。
我四处寻找PID 4,并提出了这个问题。从this answer和blog post我发现与PID 4有关的任何东西都可能是Windows服务,所以你可能想在services.msc
中寻找相关的服务。
此外,此过程由System运行,System被视为另一个“登录”用户。
我有同样的问题,因为IIS在服务器上运行,如果你是这种情况,你可以使用IIS管理器停止它。
如果您运行的是Windows Server 2012 R2,请确保删除工作文件夹:文件服务器下的http://blogs.technet.com/b/filecab/archive/2013/10/15/windows-server-2012-r2-resolving-port-conflict-with-iis-websites-and-work-folders.aspx删除工作文件夹功能为我工作。
我停止了万维网发布服务,然后它工作了。
这些都不适合我。我不得不去a SuperUser question。
如果是System Process-PID 4,则需要禁用其他服务(例如Windows 7或2008上的Windows远程管理或打印后台处理程序)按需启动的HTTP.sys驱动程序。
有两种方法可以禁用它,但第一种方法更安全:
- 转到设备管理器,从菜单/视图中选择“显示隐藏的设备”,转到“非即插即用驱动程序”/ HTTP,双击它以禁用它(或将其设置为手动,某些服务依赖于它)。 重新启动并使用
netstat -nao | find ":80"
检查是否仍然使用80。
这对我有用!
BranchCache是我的问题。我的解决方案是以管理员身份运行Powershell并运行:
Disable-BC -Force
参考:https://docs.microsoft.com/en-us/powershell/module/branchcache/disable-bc?view=win10-ps
对我来说,我必须在我的VM上卸载“Citrix虚拟桌面代理”
即使在“显示所有用户的进程”上放置复选标记后,PID = 4也不会显示在任务管理器中。那么只有一个用户。
但是,netstat -b显示指向相同PID = 4的多个连接,在此计算机上显示以下内容。
我只选择了与TCP协议有关的那些。
这是在尝试解决许多其他问题后没有启动的IIS问题时获得的。我认为你不应该停止这个过程。
键入netstat -a -n -b -o |more
如果停止World Wide Web Publishing Service
有帮助
然后在IIS管理器中查看每个站点的绑定设置,通过选择一个站点并在侧面板上单击绑定。然后根据需要将端口80更改为其他内容。
此外,尝试停止“SQL Server Reporting Services(MSSQLSERVER)”,显然默认为80.我这样做,端口80释放。 PID将罪魁祸首确定为“系统”,但显然系统可能意味着多种事物。
我刚去服务并停止了Web部署代理
有许多服务,可以在Windows上侦听端口80。
幸运的是,您可以检测并停止所有运行简单的控制台命令:
NET stop HTTP
当你启动它时,你将首先获得列表:
为了避免将来出现这个问题,请访问本地服务和disable listed services。
注: - 有些服务会立即重启,只需运行几次“NET stop HTTP”。
我有同样的问题。可以通过在运行服务下停止World Wide Web Publishing服务来修复它。
听起来IIS正在侦听端口80的HTTP请求。
尝试通过进入控制面板/管理工具/ Internet信息服务停止IIS,右键单击“默认网站”,然后单击弹出菜单中的“停止”选项,查看端口80上的侦听器是否已清除。
这对我有用:
我发现“SQL Server Reporting Services(MSSQLSERVER)”会自动启动并侦听端口80。
我希望这有帮助。
该
工作溶液测试:(WINDOWS 10)
这有很多理由,我推荐的一个原因/解决方案是这样的:
用管理员权限打开你的窗口命令然后:
net stop http /y
以上将同意停止http服务:
sc config http start= disabled
以上将默认配置服务禁用
如果上述解决方案无法解决您的具体案例,请点击此处:
消息来源:http://www.devside.net/wamp-server/opening-up-port-80-for-apache-to-use-on-windows
重新启动您的网络服务器/ XAMPP / APACHE和完成。
如果您需要重新启用默认值,请执行命令sc config HTTP start= demand
,解释的来源是http://servicedefaults.com/10/http/