前言
最近需要在win10上使用python创建一个http文件服务(默认端口 8000),结果执行了
python3 -m http.server -b 0.0.0.0
后,发现服务跑起来了,但浏览器无法访问 http://localhost:8000
反复尝试后,发现使用一个其它端口,比如 12123,服务正常。怀疑 8000 端口是不是被什么服务给占用了。下面记录一下分析过程,留作参考。
正文
-
鼠标右击home图标,打开 Windows PowerShell(管理员)(A);
-
查看win10正在使用的端口号
netstat -abno|findstr "8000"
# TCP 0.0.0.0:8000 0.0.0.0:0 LISTENING 6532
可以看到,pid为6532的进程正在占用端口6532
- 根据pid查看服务
# ps | findstr "6532"
tasklist | findstr "6532"
# vmnat.exe 6532 Services 0 1,268 K
发现是 vmnat.exe 在占用,在任务管理器发现,其关联的服务是 VMware NAT Service
参考
[1]. Win10怎么看端口是否被占用
[2]. 怎么查看pid对应的进程(window根据pid查看进程信息)