如何检查端口被什么程序占用

栏目:云星空知识作者:金蝶来源:金蝶云社区发布:2024-09-23浏览:1

如何检查端口被什么程序占用

案例场景

1、安装产品环境检测提示8088端口占用。

2、IIS给网站添加端口后无法启动,提示“另一个程序正在使用此文件,进程无法访问。”

3、尝试登录金蝶云星空网页端,网页提示需要认证。

以上情况(其他类似情况)都可能与使用的端口被其他应用程序占用有关。

如何快速、准确定位占用端口的进程呢?

解决方案

1、按下“Windows+R”键打开【运行】。输入 CMD 后点击【确定】打开黑色的命令提示符界面。

2、输入 netstat -aon|findstr :端口号 按回车查看结果。

3、如果查询存在返回结果则说明有进程占用,最后一列是进程的PID号,可以使用tasklist /FI "PID eq PID号" 查询具体进程名称,或在任务管理器查看对应进程情况。

特殊情况分析

1、以上查询结果如果没有任何内容则可以确定端口没有被占用。

如果依然存在提示端口占用可能是其他原因导致(如计算机名称是全数字会导致安装服务端时提示8088端口占用)。

2、特别一点,如果查询出来的PID=4的话需要进一步分析。以下我们以查找1550端口是什么进程/业务占用为例说明。

2-1、首先使用命令查看端口及进程情况。

如图可发现1550端口存在占用,对应PID=4、为System进程。实际上PID=4的总是System,但是实际上一般并不是System自己占用了这个端口而是相关进程或服务运行在系统级别导致。

2-2、要发现具体占用这个端口的实际源需要进一步执行命令。可以尝试如下命令进一步分析。

netsh http show servicestate

发现因为这个命令的输出内容很长,直接在命令提示符下面不是很方便看,建议将结果重定向到文件,如c:\1550.txt 那对应名就是

netsh http show servicestate > c:\1550.txt

注意目录要有权限写入,没权限就换个有权限的文件夹。


2-3、执行完成没有错误,我们使用记事本打开 c:\1550.txt 文件并搜索端口号。


2-4、一般只要是通过HTTP方式占用的端口,在此处都可以搜到一个或多个结果。通过上图的请求队列名称的值再次搜索可看到类似下图结果。

2-5、结合以上步骤的2张图片,例我们可以看到他应该是IIS里面的一个网站,可以打开IIS看看是否对得上。如下确实有这样一个网站。其他程序占用的话类似检查。


3、如果是80或443端口,常见的冲突服务有SQL SERVER REPORT SERVICES 和Windows Sync Share 服务,可以将这2个服务停止并禁用掉。

如何检查端口被什么程序占用

案例场景1、安装产品环境检测提示8088端口占用。2、IIS给网站添加端口后无法启动,提示“另一个程序正在使用此文件,进程无法访问。”3、尝试...
点击下载文档
确认删除?
回到顶部
客服QQ
  • 客服QQ点击这里给我发消息