system进程占用80端口解决办法

铁兵 提交于 周五, 2010-12-31 11:35
內文

  system进程是windows的内核进程,pid为4,不过也有可能是病毒伪装的,首先判断是不是病毒:打开任务管理器,点击 查看-选择列表,把pid和用户名选中,如果system不带.exe后缀pid=4并且用户名为system,恭喜你,system进程不是病毒。

多方实验解决:
1,在运行里输入 cmd 进入DOS命令行窗口
2,输入命令 netstat -anb

  看到80端口被tomcat5在占用,关闭它,apache就正常启动了!如果你的80端口是被其他程序占用,直接关闭程序就可以了!

在CMD下运行:

 apache -k install

 apache -k start

这个apache的出错提示!

  可能是你还安装了其他的web服务器,比如IIS,它的默认端口也是80,你需要修改它的默认端口或修改apache的。

  倘若安装了其他的web服务器,那就在系统的服务里面先停掉然后安装apache。

  倘若没有安装其他的服务器,只是apache安装了多次,那么卸载apache的同时,一定要在磁盘中删除apache的所在安装路径下在文件,从新启动电脑,然后从新安装apache,就会ok的。

  主要就是 web服务器的端口冲突,还有就是多次安装卸载的不干净。

  winxp 下 apache2 安装 问题及解决

  安装apache 2 出现的问题:

  “(OS 10048)通常每个套接字地址 (协议/网络地址/端口) 只允许使用一次:

  make_sock: could not bind to address 0.0.0.0:80...”

  一般是IIS或其他程序占用了80端口引起的

  分析:

  netstat -a

  查看相应端口,是否有程序占用

  netstat -ab

  查看具体占用程序

  两种解决方法:

  1、打开控制面板->服务 找到 IIS admin 等相应服务 关闭并禁用

  2、如果不想关闭IIS服务 可将apache使用的端口改成其它端口

  将apache2/conf/httpd.conf 中的

  Listen 80 改为 Listen (你要使用的端口) 如 Listen 8080

  不过这时在你访问你的apache 下的Web服务时 在域名后要加上端口号

  如: http://localhost:8080

  然后用CMD进入命令行模式 进入你安装apache的目录 /apache2/bin

  输入

  apache -k install

  apache -k start

  通常每个套接字地址(协议/网络地址/端口)只允许使用一次。

  经过研究发现原来:

  所有非托管资源程序必须能控制资源释放,如数据库连接、SOCKET连接等在使用后都应当显示关闭,如果是长连接,在程序退出时应当确保所有占用的连接都被关闭。

  绑定的端口没有释放,需要等待一段时间,或者在程序退出时调用close关闭udp套接字。

  我查看任务管理器的进程,发现上一个页面的开发服务器引起的,我结束进程:


强行关闭8080端口
解决方法如下: 1.打开CMD. cmd
2.查找端口号的PID netstat -a -o
3.强行关闭 ntsd -c q -p PID(查询出来的PID号码)

  非server版本系统可能开启了部分IIS服务,打开控制面板-添加或删除程序-添加或删除windows组件,里面Internet信息服务,把 前面 的框框去掉点击确定即可。这样,一般就可以解决,如果想保留IIS或卸掉也不行的话,那就完整的安装IIS,然后就好办了,把IIS端口改掉,重启 后,system就不在占用80端口了。

查找占用端口的程序pid的方法:

在cmd命令窗口输入netstat -abn ->c:/port80.txt 然后到c盘port80.txt文件中找到占用80端口的程序pid。