Win11中顽固型80端口占用问题
写作时间:2022-04-13 作者:田辛
不知道从什么时候开始,我日常工作的笔记本电脑 Huawei MetaBook E,总是出现80端口被占用的情况。 虽然现在已经很少做与开发有关的工作了,但笔记本里面没有一个很好用的开发环境总是缺少安全感。 于是今天仔细的研究一下。
1 看是被什么进程占用
netstat -nao | findstr "80"
netstat 命令可以显示路由表、实际的网络连接以及每一个网络接口设备的状态信息。然后专门找到80端口有关的内容。
我多么希望,是我最近手欠安装的什么程序啊。 结果以看pid,心凉了半截。
TCP 0.0.0.0:80 0.0.0.0:0 LISTENING 4
TCP 0.0.0.0:7680 0.0.0.0:0 LISTENING 9676
TCP 127.0.0.1:49679 127.0.0.1:49680 ESTABLISHED 6704
好吧,PID如此之小,基本上是系统进程了。 仔细以看果不其然:“System"进程。
2 尝试用一般方法处理
既然是System进程,我首先想到的是微软系的一些服务。 IIS?我没装,SQL Server?那东西真的,2008版本之后我几乎就没用过。 在服务里又查了一个溜够的。我甚至怀疑OneDrive,或者其他的什么了。
当然,下面这个命令,我也没忘了试:
net stop http
但是结局感人:
你想继续此操作吗? (Y/N) [N]: y
SSDP Discovery 服务正在停止.
SSDP Discovery 服务已成功停止。
Print Spooler 服务正在停止.
Print Spooler 服务已成功停止。
HTTP Service 服务正在停止........
HTTP Service 服务无法停止。
3 没有办法的办法
最后,我突然想起来Win7下,曾经听说过的一个传说:80端口默认被System进程占用。
于是打开注册表:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\HTTP
把一个叫做”Start“的键值从原有的3改为了0。
重启之后,果然问题解决。