-netstat -anno 回车,然后找寻80的pid 相信很多人都这个命令都不陌生,通过此命令我们可以找到端口和进程pid的对应关系, 在云服务器上不知是何原因,有一个名为System的进程把我的80端口抢了,按常理,退一步海阔天空,可今天 不行,因为服务器地址修改,所有用户的服务器配置必须都要修改,主要这里没有域名的。 怎么办,系统进程谁改惹啊,奶奶的,当时灰常的着急,经过不懈的问百老师,终于得到找到了解决方案!在此表示感谢!
解决过程:开始-运行-输入cmd(回车)-打开命令提示符——netstat-ano,就可以查看本机端口开放情况与对应的程序。如下图: 图中,可以看出,21、25以及80端口都被PID(进程标识符)为:5668的进程所占用。现在,只要知道PID为5668的进程就可以解决了。
2、打开任务管理器,如下图:
默认的任务管理器是没有PID这一项的,只需要将查看-选项列(s)中的PID勾选就可以了。
图中,可以看出PID:5668对应的进程为inetinfo.exe。(稍后解释inetinfo.exe进程)如果你现在直接结束掉这个进程,不论如何inetinfo.exe都会自动重新运行,只是这个时候的PID就改变了。所以这样不能完全的释放80端口。
最后操作:停止IIS“默认网站。其实罪魁祸首是IIS,因为我之前有做网站,需要安装IIS,并且创建了一个站点,在控制面板-管理工具-internet信息服务-网站下面可以看
到这个站点,只需要把这个站点停止掉就可以了,然后你再到开始-运行-输入cmd(回车)-打开命令提示符——netstat-ano,可以看到已经没有80端口,这个时候在安装软件,
就一切顺利了。
注:进程PID是可以变化的,就是说不同时间运行同一个程序,他的PID号就不同。不同计算机同一个进程的PID号多数情况也是不同的。因此,在结束inetinfo.exe
之前的PID是一个三位数,重新启动后,它的PID可能为四位数了。这点不影响问题的解决,我只是好奇,便拿出来说罢了。
=====================
inetinfo.exe:
正常情况下,inetinfo.exe主要用于支持微软WindowsIIS网络服务的除错。这个程序对你系统的正常运行是非常重要的。 属于系统组件,不要删除! 他对应的系统服务是 IIS
adminService 或 world wide web publishing service 。如果你停止 IIS adminService ,那么系统会自动停止world wide web publishing service、FTP以及SMTP服务。
就是上面对应的80、21以及25端口。很好理解。
至于为什么会出现“默认网站“已经停止了,而inetinfo.exe进程还在运行(只要安装了IIS组件,就会有这个进程的),而且80端口被它占用的问题,就复杂了,我们不需要
也没必要知道为什么,知道了原理并解决了问题才是关键,不是吗,呵呵~~