摘要:在部署 通达OA 的时候,提示 80 端口被占用,其部署电脑是新划分的虚拟机,查询出是 ntoskrnl.exe 占用了80 端口。
本文转载至
平台/作者:CSDN / Cz范特西
链接:解决80端口被PID=4服务占用的问题,三个思路
一、问题现状
80端口会被占用,有可能是被ntoskrnl.exe应用程序占用,有可能是被电脑的SQL Server占用,也有可能是被IIS服务占用。
1、通过 netstat -aon|findstr 80 查找占用 80 端口的 PID
![](https://img-blog.csdnimg.cn/3168b954229c4d60b25bc25dd030d6d4.jpeg)
2、通过 tasklist|findstr 4 根据 PID 查找进程名称
![](https://img-blog.csdnimg.cn/e1739d2d1d3e4c07af63149b527a9427.jpeg)
3、通过 taskmgr 打开任务管理器,查找对应进程
![](https://img-blog.csdnimg.cn/fa2eb1e7271c469b915aac4bbcb98930.png)
4、右键查看属性
![](https://img-blog.csdnimg.cn/3125e967f300456b8180ff8307f2cca9.png)
ntoskrnl.exe 是 Windows 操作系统的一个重要内核程序文件,里面存储了大量的二进制内核代码,用于调度系统。在系统经过预启动和启动阶段后进入内核调用阶段时由 Ntldr 调用 ntoskrnl.exe, 在 Windows XP 系统中 ntoskrnl.exe 存储了启动 logo 画面。 调用 ntoskrnl.exe 文件时将由 ntdetect.com 收集的硬件信息传递给它,同时被调用的还有 hal.dll 文件。在正常情况下,在任务管理器是以"System"的名字出现的。
二、解决办法
通过网上搜集以及自身遇到的问题,总结了三个解决方法。
2.1、关闭 ntoskrnl.exe 服务
1、通过 services.msc 打开服务,找到 World Wide Web Publishing Service
![](https://img-blog.csdnimg.cn/17f5cfefa3fe412eb087b74f8cdec026.png)
2、右键属性,将其启动类型改为手动,然后停止掉该服务
![](https://img-blog.csdnimg.cn/4edc1afbc8c548b28e51ff2db8803e66.png)
2.2、关闭SQL Server服务
如果上一种方法无法解决,我们可以看看本方法:
有可能你电脑里有SQL Server这个软件,它会占用你的80端口。
解决方法:进入服务界面后,找到 SQL Server Reporting Service(MSSQLSERVER) 这个服务,停止即可
2.3、修改注册表
1、通过 regedit 打开注册表,
2、通过路径 计算机\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\HTTP 找到Start,将它的值修改为0,然后电脑重启即可。
![](https://img-blog.csdnimg.cn/76a3636e6f4049babc8ce4cefa807875.png)