Apache启动后自动关闭,端口占用惹的祸

今天在本地更新了下网站,结果怪事发生,phpstudy中的Apache死活启动不了,改了端口又可以开起来。

看了事件记录发现是80端口被占用了,可我根本没开这啊?
折腾吧!查看下80端口到底是被哪个程序占用了?

进入CMD,
输入netstat -ano
可以看到本地程序使用的网络协议,占用的端口号,对面的外网地址,网络连接状态,和对应的PID。

C:Documents and SettingsAdministrator>netstat -ano

Active Connections

Proto Local Address Foreign Address State PID
TCP 172.0.0.1:80 0.0.0.0:0 LISTENING 3068
TCP 172.0.0.1:135 0.0.0.0:0 LISTENING 1492
TCP 172.0.0.1:443 0.0.0.0:0 LISTENING 3068
TCP 172.0.0.1:445 0.0.0.0:0 LISTENING 4
TCP 172.0.0.1:1477 0.0.0.0:0 LISTENING 2228
TCP 172.0.0.1:3306 0.0.0.0:0 LISTENING 1976
TCP 172.0.0.1:4557 0.0.0.0:0 LISTENING 3600
TCP 172.0.0.1:4559 0.0.0.0:0 LISTENING 3600
TCP 172.0.0.1:8875 0.0.0.0:0 LISTENING 948


这里有个问题需要探讨一下,因为最早看到的是:
Proto Local Address Foreign Address State PID
TCP 172.0.0.1:80 3dns-2.adobe.com:0 LISTENING 3068
强制禁用了Adobe Flash Player Update Service服务后,看到的就变成:
Proto Local Address Foreign Address State PID
TCP 172.0.0.1:80 0.0.0.0:0 LISTENING 3068

很明显得PID为3068的程序私自占用了80端口,可是没有对应的程序名,怎么知道究竟是哪一个进程呢?
很简单,任务管理器里就可以查找到,只是默认情况下是没有显示这一列的,打开任务管理器,
点击[查看]–[选择列],把[PID(进程标识符)]打勾,确定。

PID 3068 对应的是QQDonwload.exe

原来QQ旋风占用,打开应用设置,发现BT设置的端口设置里TCP传输端口是80,恢复默认发现原来的是4385,不知道什么时候改的,还是中招了?
点击随机生成改成别的,或者恢复默认。

Apache恢复正常了。

想到这里顺便查看了一下迅雷,迅雷的默认TCP传输端口是80,有做网站的朋友建设也随机生成一个。

12:29 2012-08-16

Tags: , , , , , ,

  • Digg
  • Del.icio.us
  • StumbleUpon
  • Reddit
  • Twitter
  • RSS

Leave a Reply

You must be logged in to post a comment.

文字链