Wampserver 2.1在Windows 7安装后显示橙色图标

18

我刚在我的Windows 7 64位电脑上安装了Wampserver 2.1,但应该变成绿色的图标变成了橙色,并显示服务器未准备好。

结果是,在打开http://localhost/时它就超时了。

有人有想法吗?我已经在谷歌上搜索过,但没有正确结果。

Apache错误日志显示如下:

[Fri Mar 11 14:40:58 2011] [notice] Apache/2.2.17 (Win32) PHP/5.3.4 configured -- resuming normal operations[Fri Mar 11 14:40:58 2011] [notice] Server built: Oct 24 2010 13:33:15

[Fri Mar 11 14:40:58 2011] [notice] Apache/2.2.17 (Win32) PHP/5.3.4 configured -- resuming normal operations

[Fri Mar 11 14:40:58 2011] [notice] Server built: Oct 24 2010 13:33:15

[Fri Mar 11 14:40:58 2011] [notice] Parent: Created child process 4320

[Fri Mar 11 14:40:58 2011] [notice] Child 4320: Child process is running

[Fri Mar 11 14:40:58 2011] [notice] Child 4320: Acquired the start mutex.

[Fri Mar 11 14:40:58 2011] [notice] Child 4320: Starting 64 worker threads.

[Fri Mar 11 14:40:58 2011] [notice] Child 4320: Starting thread to listen on port 80.

[Fri Mar 11 14:40:58 2011] [notice] Parent: Created child process 4320

[Fri Mar 11 14:40:58 2011] [notice] Child 4320: Child process is running

[Fri Mar 11 14:40:58 2011] [notice] Child 4320: Acquired the start mutex.

[Fri Mar 11 14:40:58 2011] [notice] Child 4320: Starting 64 worker threads.

[Fri Mar 11 14:40:58 2011] [notice] Child 4320: Starting thread to listen on port 80.

据我看,没有大问题。

正在运行的版本是: apache 2.2.17 php 5.3.4 mysql 5.1.53

如果我使用该服务测试80端口,它会正常运行,并显示如下信息:

端口80实际上正在被以下内容占用:服务器:Apache/2.2.17(win32)PHP/5.3.4

更新:几个月过去了,问题仍未解决,Skype甚至未安装过也从未在计算机上安装过。

16个回答

29

很可能是你的Skype给你带来了麻烦。尝试按照以下方式配置你的Skype:

工具 -> 选项 -> 高级 -> 连接 -> 取消勾选“使用端口80...”

我曾经遇到过同样的问题,这种方法对我起了作用。


或者Teamviewer。对我来说就是这样。 - Gabriel Fair
谢谢@GabrielFair。我认为是oDesk Teamviewer应用程序引起的问题。 - marknt15

29

我在Windows 7上遇到了相同的问题,WAMP图标变橙色,当鼠标指向WAMP图标时,显示服务器在线,但是我无法连接到服务器。

发现端口80上没有运行任何东西,我没有安装Skype,我的hosts文件也正确。

对我有效的方法如下所述。

当我点击WAMP图标上的Apache -> Service时,我发现启动/停止服务按钮是灰色的。

所以,我点击了“安装服务” Apache -> Service -> Install Service。

这样就解决了问题。


2
我必须像WAMP网站告诉我的那样安装Visual C++。一旦我这样做了,“安装服务”就起作用了。 - Tobias Fünke
好的答案。这对我有用,但在执行此操作之前,我还根据此(https://dev59.com/enRA5IYBdhLWcg3w0xfk)线程禁用了http.sys。 - ficuscr
我在尝试运行这个程序时遇到了一个消息,上面写着“程序无法启动,因为您的计算机缺少 msvcr100.dll 文件”。然后根据这篇文章http://www.faqforge.com/windows/fix-the-program-cant-start-because-msvcr100-dll-is-missing-from-your-computer-error-on-windows/安装了补丁,在重新启动后解决了问题。谢谢。 - Ruwantha
安装 Visual C++ 可再发行组件后,这对我也起作用了。 - James P.

4
请检查你的WAMP所使用的Apache端口,位置在"http.conf"文件中。尝试将端口更改为大于1024的数字,然后重新启动Apache。然后通过类似于http://localhost: $PORT_NUMBER_HERE的URL访问Apache服务器。如果它能够工作,那么是因为你的用户没有权限打开低于1024的套接字。这在Unix环境中很常见,但我不是Windows用户,不知道它是否有相同的限制。请试一下。
此外,你也可以检查Windows防火墙并给予正在使用的端口访问权限,以防止防火墙阻止它。
祝好。

配置文件可能位于:wamp\Apache2\conf。 - groo
那行不通。如果我使用服务测试端口80,他可以正常运行,并告诉我:端口80实际上正在被使用:服务器:Apache/2.2.17 (win32) php/5.3.4。 - Kennethvr
所以请检查防火墙。同时,可以使用控制台中的telnet命令进行测试:“telnet localhost 80”。 - groo
1
你安装了Skype吗?我曾经看到过Skype和WAMP同时运行出现这个问题。 - Drewdin
不,Skype没有安装,这是你在互联网上读到的论据 :-) - Kennethvr

3

我曾在不同的机器上花费数小时时间苦苦钻研。通常一个解决方案在下一个机器上并不能奏效。这是我通过试错发现的,每次都能奏效的方法。

在win7 POS上安装WAMP

  1. 将MSVCR100.dll添加到System32中
  2. 安装VB 2008
  3. 安装WAMP
  4. 在服务中禁用“World wide web publishing service”
  5. 以管理员身份启动WAMP。

完成。无需编辑httpd.conf,无需编辑hosts文件,也无需禁用IIS。

按照这些步骤进行完整的WAMP安装只需要不到十分钟。希望这个方法对你也有帮助。


2

检查你的hosts文件,它应该位于/windows/system 32/drivers/etc/

使用记事本或类似软件编辑文件,查找两行类似以下的内容

# 127.0.0.1 localhost 和 # ::1 localhost

从每行开头去掉 #,保存文件(确保没有文件扩展名),然后重新启动WAMP。

这应该能够解决问题,至少对我有效,但是还有其他一些可能会与WAMP冲突的程序,比如Skype。

希望这个方法对你有效。


2

逐个检查每个服务。MySQL使用端口3360,可能也被阻止了。

个人经验来看,我发现在2.0i版本后,WAMP存在问题,所以我转而使用Linux虚拟机或者运行Linux的另一台计算机进行PHP开发。

尝试使用EasyPHP,因为你可以将其安装到USB驱动器上,这样你就可以随身携带"WAMP"。


2

由于IIS和/或在Visual Studio中开发Web应用程序时使用的Web部署代理服务阻止了端口80,我在橙色wamp上遇到了这个问题。当我停止这两个服务后,wamp就可以正常启动并拥有漂亮的绿色图标 :)

以管理员身份从命令行运行以下两个命令以停止这些服务

iisreset /stop
net stop msdepsvc

如何恢复或将其改回原始状态?(以防我搞砸了)只需将单词“停止”更改为“开始”即可。 - Rafael
是的,只需要将“stop”改为“start”。 - Abris
iisreset 不被识别为内部或外部命令,也不是可运行的程序或批处理文件。 - Rafael
尝试使用NET STOP W3SVC而不是iisreset /stop。 - Abris
请解释一下为什么我应该使用 NET STOP W3SVC 而不是 iisreset /stop。 - Rafael

2
我使用的是Wampserver 2.2。我遇到了同样的问题,图标一直呈现橙色...下面是我的发现:如果你点击

Wamp托盘图标 > Apache > 服务 > 测试端口80

这将显示什么正在使用端口80:服务器:Microsoft-HTTPAPI/2.0,这不是我想要的...所以我像上面建议的那样,把http.conf中的Listen 80的值改为Listen 81。停止并重新启动,问题就解决了。


这是另一个帮助我找到阻止端口80的原因的资源:http://www.devlog.nl/apache-on-port-80-blocked-by-microsoft-httpapi2-0/ - Lenny Sirivong

1
我曾经遇到过同样的问题,阅读了这篇文章后,我发现如果你同时运行Wamp和Skype,为了避免出现问题,你需要做以下操作:确保你先打开Wamp服务器,然后再打开Skype。这样就可以消除问题,我能够顺利连接到WAMP服务器,并且图标变成了绿色 :)。

1

今天我遇到了同样的错误。我将 #listen 从80更改为86,但仍然无法正常工作。

我在wampserver论坛上找到了以下信息:

  • apache使用80(我使用其他答案中的方法将其更改为86)
  • mysql使用3306
  • 编辑mysql文件夹中的my.ini
  • 将3306更改为3307
  • 在文件中写入3次
  • 保存并重新启动wamp。

之后,我的图标终于变成了绿色。但是当我访问localhost时,它仍然显示未找到。这是因为您需要将正在使用的新端口附加到localhost上 - 即localhost:86。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接