windows查看某个端口被谁占用

我建议首先 运行在cmd中运行 (安装目录)apache/bin/httpd.exe

无法启动apache,显示的log为:
20:41:12  [Apache] Error: Apache shutdown unexpectedly. 
20:41:12  [Apache] This may be due to a blocked port, missing dependencies, 
20:41:12  [Apache] improper privileges, a crash, or a shutdown by another method. 
20:41:12  [Apache] Check the "/xampp/apache/logs/error.log" file 
20:41:12  [Apache] and the Windows Event Viewer for more clues 

查了一下 通常是80端口  但是也需要别的端口的

通过运行apache/bin/httpd.exe 打印如下log: 
(OS 10048)通常每个套接字地址(协议/网络地址/端口)只允许使用一次。 : make_sock: could not bind to address 0.0.0.0:443

也就是443端口被占用,apache无法监听443端口,该如何解决呢? 

最直接的方法是关闭占用443端口的进程: 
1. netstat -ano|grep 443(netstat -aon|findstr 443) 看看 443端口被占用没                                     
2.通过cmd中打印tasklist|grep 443,查找占用443端口的进程号。 
3.taskkill /pid 端口号 杀掉此进程,XAMPP重启apache即可。如果443的进程工作中不能结束,可改443为8443。
  1. 或者是我们打开任务管理器,切换到进程选项卡,在PID一列查看2720对应的进程是谁,如果看不到PID这一列,如下图:

    如何查看某个端口被谁占用
  2. 则我们点击查看--->选择列,将PID(进程标示符)前面的勾打上,点击确定。

    如何查看某个端口被谁占用
  3. 这样我们就看到了PID这一列标识,看一下2720对应的进程是谁,如果没有,我们把下面的显示所有用户的进程前面的勾打上,就可以看到了,映像名称是svchost.exe,描述是,Windows的主进程,与上面命令查看的完全一致。

    如何查看某个端口被谁占用
  4. 结束该进程:在任务管理器中选中该进程点击”结束进程“按钮,或者是在cmd的命令窗口中输入:taskkill /f /t /im Tencentdl.exe。

    如何查看某个端口被谁占用
 
 
 
 
原文地址:https://www.cnblogs.com/timssd/p/4761751.html