admin管理员组

文章数量:1532440

2024年1月17日发(作者:)

80端口是否被占用的解决办法

80端口是否被占用的解决办法

一、问题描述

公司外网发布是必须使用80端口,可是每次tomcat启动时,总时报端口占用,如果将端口改为不用的端口,例如:8090等,就能正常启动使用。

二、问题分析

一般服务器安装MS SQL Server 2008 时,都要求安装IIS 5.0或6.0,此时,肯定时被IIS

占用了,如果你把IIS 端口号修改成其它的,重启IIS 后,80端口仍然被占用呢,那你就需要检测是否还有其它服务占用了。

三、问题检查及处理

先介绍一下我的服务器环境:Windows 2003 Server SP2,MS SQL Server 2008 R2 ,Tomcat

6.0 ,Sun JDK 1.6 和1.7版本。

检查端口占用常用方法有:使用Dos 命令检查或使用专用软件检查。

使用Dos 检查:在Dos 命令行中输入 netstat -aon|findstr "80" 即可查看到端口被谁占用,我查时被 System 占用,PID为4,使用进程查看器发现是系统自己的进程,所以没办法停用,如果停用,系统无法正常工作,并且重新启动电脑。

使用专用软件检查,例如:Active Ports软件,可以查看到什么端口被什么软件点用,安装位置是什么等,就可以直接定位,但是我的服务器还是显示为PID为4,程序为System占用,声明:System不带.exe啊(有的进程为:,我的则不是)

处理方法:经仔细查找,发现是MS SQL Server 2008服务占用了80端口,此时启动 SQL

Server 配置管理器,进入后,将SQL Server Reporting Services 服务停用后即可,也不影响MS SQL Server 的正常使用。

1 / 7

Syc086@ 撰写

80端口是否被占用的解决办法

最终处理方法:

1. 将IIS改不用的端口后禁用掉。

2. 将MS SQL Server 2008的SQL Server Reporting Services 服务停用。

3. 重新关机看一下Tomcat是否正常启动。

下面是我正常启动后的端口服务图片

四、网上查找的资料,供学习

进入CMD,输入netstat -ano就可以很清楚的看到本地80口占用程序的PID,然后再去任务管理器里查找到PID所对应的进程(如果任务管理器没有PID,查看-->选择列),原来是迅雷5给占用了,再去迅雷里查看设置,竟然BT的默认TCP传输端口是80,改掉设置,IIS启动正常了。。。

如何查看80端口被占用

开始--运行--cmd

--cmd

2 / 7

Syc086@ 撰写

80端口是否被占用的解决办法

进入命令提示符,输入netstat -ano

即可看到所有连接的PID

之后启动任务管理器

找到这个PID所对应的程序

3 / 7

Syc086@ 撰写

80端口是否被占用的解决办法

如果任务管理器中没有PID这一项,可以在任务管理器中选"查看"-"选择列"

4 / 7

Syc086@ 撰写

80端口是否被占用的解决办法

勾选pid,确定即可显示

经常,我们在启动应用的时候发现系统需要的端口被别的程序占用,如何知道谁占有了我们需要的端口,很多人都比较头疼,下面就介绍一种非常简单的方法,希望对大家有用

假如我们需要确定谁占用了我们的80端口

1、Windows平台

在windows命令行窗口下执行:

C:>netstat -aon|findstr "80"

TCP 127.0.0.1:80 0.0.0.0:0 LISTENING 2448

看到了吗,端口被进程号为2448的进程占用,继续执行下面命令:

C:>tasklist|findstr "2448"

2016 Console 0 16,064 K

很清楚吧,thread占用了你的端口,Kill it

如果第二步查不到,那就开任务管理器,看哪个进程是2448,然后杀之即可。

5 / 7

Syc086@ 撰写

80端口是否被占用的解决办法

如果需要查看其他端口。把 80 改掉即可

补充:原来出现这个错误原因

(: Could not reliably determine the server's fully qualified domain name, using 192.168.1.111 for ServerName)是因为DNS没配置好. 如果不想配置DNS, 就在 , 在最前加入 ServerName localhost:80 即可

另外360安全卫士中的【流量监控】,查看网络连接就可以看一些端口的情况。

80端口被占用(端口检查)解决--转

我从会做网站到现在也遇到过了N次了,今天又让我遇到了,我来解决他,并为大家做最详细易懂的分析。

我的情况:我用了一个小插件“黑风Aspweb服务器”代替IIS,尽管如此IIS组件也是要装的。停止IIS中的“默认网站“,意味着停止了80端口的运行,然后打开“黑风Aspweb服务器”即可正常测试网站。

故障现象:今天“默认网站“已经停止,但是打开“黑风Aspweb服务器”还是提示“80端口被占用”。

解决过程:打开命令提示符——netstat -ano,就可以查看本机端口开放情况与对应的程序。如下图:

图中,可以看出,21、25以及80端口都被PID(进程标识符)为:5668的进程所占用。现在,只要知道PID为5668的进程就可以解决了。

2、打开任务管理器,如下图:

6 / 7

Syc086@ 撰写

80端口是否被占用的解决办法

图中,可以看出PID:5668对应的进程为。(稍后解释进程)

最后操作:结束该进程,重启或停止IIS“默认网站”,不论如何都会自动重新运行,然后,再停止IIS“默认网站”,运行“黑风Aspweb服务器”,即可解决。

注:进程PID是可以变化的,就是说不同时间运行同一个程序,他的PID号就不同。不同计算机同一个进程的PID号多数情况也是不同的。因此,在结束之前的PID是一个三位数,重新启动后,它的PID可能为四位数了。这点不影响问题的解决,我只是好奇,便拿出来说罢了。

7 / 7

Syc086@ 撰写

本文标签: 端口占用进程是否查看