1、端口的概念

在网络技术中,端口(Port)包括逻辑端口和物理端口两种类型。物理端口指的是物理存在的端口,如ADSL Modem、集线器、交换机、路由器上用 于连接其他网络设备的接口,如RJ-45端口、SC端口等等。逻辑端口是指逻辑意义上用于区分服务的端口,如TCP/IP协议中的服务端口,端口号的范围从0到65535,比如用于浏览网页服务的80端口,用于FTP服务的21端口等。由于物理端口和逻辑端口数量较多,为了对端口进行区分,将每个端口进行了编号,这就是端口号。

2、PID的概念 

PID(进程控制符)英文全称为Process Identifier。

PID就是各进程的身份标识,程序一运行系统就会自动分配给进程一个独一无二的PID。进程中止后PID被系统回收,可能会被继续分配给新运行的程序。

PID一列代表了各进程的进程ID,也就是说,PID就是各进程的身份标识。

3、Windows查看端口号及对应进程

查看网络状态命令:netstat -ano

主机/服务器某端口被占用及解决办法-风君雪科技博客

查看80端口的使用:netstat -ano | findstr 80

查看80端口的PID并根据PID查看对应进程:tasklist | findstr 3728

tpshop项目安装在Apache服务器上,访问127.0.0.1:80会打开tpshop首页(Apache MySQL都启动)

主机/服务器某端口被占用及解决办法-风君雪科技博客

右键该进程,选择“打开文件所在的位置”

 主机/服务器某端口被占用及解决办法-风君雪科技博客

如果80端口被其他本机上的服务器占用的话,那么127.0.0.1:80就不能打开tpshop商城首页。

一般安装在本机的禅道系统,其架构中的apachezt服务器和mysqlzt数据库这两个的端口会与phpstudy中的Apache服务器和MySQL数据库的端口相冲突。

治标的解决办法:

结束端口占用:taskkill /PID 4112 /f   f表示强制执行

或者在任务管理器–详细信息中右键该进程结束掉占用80端口的进程即可

4、解决办法–治本 (重新分配端口)

 在同一个服务器中,出现端口冲突应该是非常常见的,只需要给冲突的端口重新分配一个端口号即可。

比如,本机中phpstudy和禅道都安装有apache服务器和MySQL数据库,80端口和3306端口只能提供给一个架构用,另一个中的apache服务器和MySQL数据库就要换一个新的端口号,以避免端口号冲突。

在禅道的安装目录下,找到apache服务器中的配置文件httpd.conf修改端口号为81,找到mysql数据库中的配置文件my.ini修改端口号为3307.

主机/服务器某端口被占用及解决办法-风君雪科技博客