Windows端口异常占用的处理,怎么进行修复

[复制链接] |主动推送
查看65 | 回复0 | 2024-9-11 08:13:22 | 显示全部楼层 |阅读模式
问题现象
服务器应用使用的端口被异常占用导致服务启动失败,例如:Windows上安装的Tomcat无法启动,
TCP 80端口已经被其它应用占用。问题原因
应用程序需要使用的TCP/UDP端口被其它程序、或者病毒木马占用。排查方法
使用netstat -ano命令可以找出占用端口的进程ID,而后使用tasklist /svc命令找出对应的进程。
如下给出一例安装Tomcat后,启动Tomcat提示端口被占用的处理过程。
1.使用netstat -ano |find “:80” 看到占用端口的进程ID是4,注:请根据实际情况修改端口。
004708f1wur4d5n09dhnoj.png
2.使用tasklist /svc| find “4” 看到是系统进程。 注:请根据实际情况修改进程ID。
004708hdxff9ezdnll99ln.png
3.尝试关闭了IIS ,iisreset /stop 。
004709z6zkxj3vd22vxvjx.png
4.但是发现80端口仍然被占用。于是使用curl -I 127.0.0.1 查看返回的server是 Microsoft-HTTPAPI/2.0
而不是Server: Microsoft-IIS/7.5 。
004709jx0zx0060guxccp9.png
能够使用Microsoft-HTTPAPI/2.0的只能是微软的产品。检查是否有安装SQL SERVER ,如果有尝试关闭
SQL Server Reporting Service这个服务。
004709kazyan59ya5k5gbq.png
关闭后再使用curl -I 127.0.0.1 就提示80端口无法连接,说明端口已经被释放。
004710x3p38ph8sts3uswz.png
注意:如果没有安装curl还可以使用telnet 127.0.0.1 80 执行完,ctrl+c终止就会出现下面图片的样子,也可以看到server:
Microsoft-HTTPAPI/2.0 ,当然仅靠这个是不能判断是哪个程序的。只能根据此判断是微软的应用占用了。具体还需要看
服务器上实际安装了哪些微软的应用。


004710juv7zcagnrinqgnn.png
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则