我试图为我的应用服务器使用端口80,但当我执行netstat -aon时,我得到:

TCP 0.0.0.0:80 0.0.0.0:0监听4

当我在任务管理器中查找进程时,它显示PID 4是SYSTEM,就是这样。没有扩展…什么都没有。“系统”。这是怎么回事?

我害怕结束这个过程,我该怎么办?


当前回答

有许多服务可以在windows上监听端口80。

幸运的是,你可以通过简单的控制台命令来检测并停止它们:

NET stop HTTP

当你启动它时,你会首先得到列表:

为了避免将来出现这种问题,请访问本地服务并禁用所列出的服务。

注意:有些服务会立即重新启动,只需要运行几次“NET stop HTTP”。

其他回答

工作解决方案-在Windows 10上测试

造成这种情况的原因有很多,我推荐的一个原因/解决方案是:

以管理员身份打开命令行,然后:

停止HTTP服务

Net停止HTTP /y

配置'http'服务默认为禁用

Sc config HTTP start=disabled

如果上述解决方案不工作,找到你的具体情况-在这里

重新启动web服务器/XAMPP/Apache,你就完成了。


重新启用http服务

use

sc config HTTP start= demand

解释的来源在这里

https://web.archive.org/web/20190917190806/http://servicedefaults.com/10/http/

我也有同样的问题。可以通过停止正在运行的服务下的万维网发布服务来修复它。

WINDOWS 11

对我来说,是万维网发布服务(World Wide Web Publishing Service)让系统使用80端口。

希望这对Win11新用户有所帮助。

BranchCache是我的问题。我的决心是以管理员的身份运行Powershell,然后运行:

Disable-BC -Force

参考:https://learn.microsoft.com/en-us/powershell/module/branchcache/disable-bc?view=win10-ps

另一个可能占用端口80的服务是BranchCache

服务。msc将其显示为“BranchCache”

或者使用net命令停止服务

net stop PeerDistSvc

更新:

PeerDistSvc是svhost.exe后面的一个服务,可以查看svchost服务类型

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