正在加载...

虽然我这个blog(www.awflasher.com/blog/)跑在Linux服务器上,但许多调试工作还是只能用WAMP体系,即,Windows+Apache+MySQL+PHP,许多人对这个体系很是鄙视,其实我认为,如非必须使用Windows,谁也没有必要这样来用Apache,因此,苹果粉丝和命令行专家可以绕过此文了:)

下面,我来谈一谈我在配置WAMP时频繁遇到的一个问题:80端口占用。(非IIS占用)

两年多以前,我曾经发现Skype有这个坏毛病(由于用Skype不多,现在我也不知道Skype的目的在何,欢迎赐教)。几个月前,又发现PPLive也有这个毛病,只不过那次根据处理Skype问题的经验,我很快就解决了。今天,又再次遇到这个问题时,我困惑了:既没有PPLive,也没有Skype,80还是被占用了。用netstat看端口的pid,也发现很奇怪:有时候不显示80,有时候又显示为0,这是系统限制资源,显然不是我要找的“元凶”。

Google了“pid 0 80 port”,看到了答案

Try typing ‘netstat -ao’ (with an ‘a’) at CMD and that will give you a list of everything running on each port.

我一眼就看到了那个“罪魁祸首”:

C:\Users\awflasher>netstat -ao
Local Address Foreign Address        State           PID   TCP
TCP 0.0.0.0:21             Pacers:0               LISTENING       511
TCP 0.0.0.0:80             Pacers:0               LISTENING       6421

用tasklist的FILTER,我们可以很快找到这个进程:

C:\Users\awflasher>tasklist /FI "PID eq 6421"
Image Name                     PID Session Name        Session#    Mem Usage
========================= ======== ================ =========== ============
MxDownloadServer.exe          6421 Console                    1      7,980 K 

原来是我电脑中“遨游浏览器”的进程。我使用遨游只是为了调试页面代码,这里我不做评价,浏览器这种敏感的话题,人各有志,各取所好。

PS:看了看netstat的帮助,分别如此描述-a和-o,也就明白了:

-a            Displays all connections and listening ports.
-o            Displays the owning process ID associated with each connection.

在本地用WAMP调试WordPress的blogger如果遇到类似的情况(症状主要是Apache无法启动),则可以用netstat -ao和tasklist来查出80端口到底被谁抢占了。

附,我所知道的Windows上一些默认占用80端口的非Web服务器类软件清单,欢迎补充:

  • Skype
  • Web迅雷
  • PPLive(可能是pp.tv,我懒得管了)
  • 傲游浏览器自动更新
  • 迅雷默认的BT上传端口(网友补充)
  • fs2you网盘(网友补充)
  • Cisco IP Communicator(网友补充)
  • QQMusic(网友补充)
还没找到您要的东西?Google试试看吧,
Google更注重原创、时效性好的文章:



本文相关评论: 才 40 条评论
( 展开所有评论 | 收起所有评论 ) 立刻发表评论 »
TanCee 2008-10-06 15:57:14

不管什么东西我都会关闭自动更新,除非强制性的。

HK 2008-10-06 16:01:58

学到了点东西,有点复杂

老宋 2008-10-06 16:17:19

迅雷的默认BT上传端口也是80,大概是为了突破配置不佳的防火墙。

在Windows下Sysinternals的tcpview会比netstat更好用,个人觉得。

benben 2008-10-06 16:36:42

netstat -nao |find “80″

benben 2008-10-06 16:38:02

他们用80端口可能是为了躲避屏蔽,很多时候都不会屏蔽80端口。

benben 2008-10-06 16:39:25

netstat -nao |find “0.0.0.0:80″

上面那个双引号搞错了。

aw 2008-10-06 17:38:48

不太明白,运行后没反应。

cloudchen 2008-10-06 16:39:30

还有常用的fs2you

benben 2008-10-06 16:46:36

看来是你系统问题,自动帮我转换了引号,防止注入?

王者之剑 2008-10-06 16:54:56

这几兄弟装在一起,80端口会被谁占用?
TCPView这个工具可以查看端口占用情况。
用这个找到相应的程序,然后停止相关服务。

aw 2008-10-06 17:35:18

这几个兄弟装一起肯定是看开启顺序了:)
另,感谢推荐这个工具。我用的是Process And Port Analyzer 2.0,但并没有在文章中推荐,因为一个netstat和tasklist足够了:)

Jerry Qu 2008-10-06 17:21:18

迅雷5也会占用80端口,很让人郁闷的!
傲游下载模块是由迅雷提供的,把这很不好的习惯也继承过来了。。。
发现自己越来越讨厌傲游这种IE SHELL!

小七 2008-10-06 18:14:45

Fs2you网盘的下载工具也会占用80端口,是一个叫peer.exe的进程,而且没有任何提示,好像是只要使用过,即使以后不启动软件这个进程也会存在

aw 2008-10-06 18:27:46

恩,想起来了,我用过那个。不过似乎不是peer.exe,而是一个更长的名字?

Loveyuki 2008-10-06 18:19:59

傲游下载用的是迅雷的技术。估计因为这个原因所以也占用80端口吧。

aw 2008-10-06 18:26:35

这个是遨游的自动升级进程吧?
不管了,反正占用80我个人都不会用:(

Loveyuki 2008-10-07 07:46:15

MxDownloadServer 是傲游下载服务,MxUP 是傲游更新服务。

Andrew Chan 2008-10-06 18:24:43

Cisco IP Communicator
软电话
老是占我端口 于是我就灭之
于是公司的人打我电话总是不通。。。

colder 2008-10-06 18:57:41

听你这么一说
我估计我的80端口搞不好真的是被迅雷5给占用了

因为我在调试WCF服务的时候 也有这样的困惑

Showfom 2008-10-06 19:19:49

是pps.tv么?pp.tv只是个搜索

好像和pplive都没什么关系诶

Fdream 2008-10-06 19:35:39

PPLive用的是8888,PP.tv(PPVA)是9000,迅雷最喜欢用80,有段时间居然让我的IIS都起不来……

aw 2008-10-06 22:14:06

呃。我确认是PPlive的某一个功能。你确认下:)?

colder 2008-10-06 19:50:35

试试这段批处理

直接运行的话要把双百分号换成单的

for /f “tokens=2,5 delims= ” %%a in (’netstat -aon’) do if %%a==0.0.0.0:80 tasklist /fi “pid eq %%b”

中子星 2008-10-06 20:06:19

迅雷5也有过,迅雷下载是不错,占用80有点不厚道

colder 2008-10-07 07:48:42

正解

我发现果然是迅雷的问题

不过让我昏倒的是
迅雷5 -> 工具 -> 配置 -> BT/端口配置
TCP端口赫然显示 [ 80 ]
难道这个是安装的默认值么?

优酷 2008-10-06 20:11:22

试试这段批处理

直接运行的话要把双百分号换成单的

cosbeta 2008-10-06 20:38:48

cterm 估计这个东西已经很少有人用了

takwai 2008-10-06 22:12:03

还有 QQMusic 也会占用 80 - -

aw 2008-10-06 22:55:24

thanks,不过估计需要80端的同学们没人用QQMusic吧……:)

iVane Hwang 2008-10-08 13:01:22

嗯,我就是经常一起用的,先开Apache,再开QQ Music~

hkysj 2008-10-07 10:48:28

原来用QvodPlayer的时候,占用了80端口,最后不得不每次改Apache的端口。

linker 2008-10-07 11:02:29

占用占吧,发现它了,K掉它!经常遇到迅雷占用的情况。

dreamtale 2008-10-07 23:54:05

问个比较菜的问题,把测试端口改了不就行了吗,改端口对测试会有影响吗?

Loveyuki 2008-10-08 16:56:29

我一般本地测试都是用绑定主机名和修改 HOSTS 文件来搞的,端口随便用。嘎嘎

aw 2008-10-08 17:16:03

我也是啊,我用aw.com,不过端口还是80好吧……要不URL太难看了(或者可以改浏览器的默认端口。。。不清楚了)

Loveyuki 2008-10-10 13:15:30

嗯。我没考虑周全,HOSTS 文件不支持指定到端口的。呵呵

童遥 2008-10-11 21:54:28

其实只要让apache比他们都先开着就好了~~

紫焰 2008-10-14 04:14:36

我是来关注这个ID的。。。我认识的一个MM,^_^,8过,这位应该是GG

zpeng 2008-10-29 23:08:43

你是否想过在网页上,那各种各样创意的广告而感动嫉妒,有没有想过,如果那些是你做的,那多有成就感,请加入我的QQ群:59343923
来体验一下吧!~不要错过哦!~

qwqw 2008-12-11 11:04:38

迅雷站用80断口 改迅雷设置~~~~

[支持Ctrl+Enter]
声明:
1、本站仅与见过面的个人博客交换链接,见此文
2、留言时的头像是Gravatar提供的服务。如果您有兴趣并且有闲暇时间,可以看看这里的介绍
3、aw's blog入选了新浪科技评选的《年度最佳个人博客》提名,喜欢这个博客的朋友们如果有空,去这里帮我投个票吧^_^