Wamp服务器无法启动:Windows 7,64位

25

我正在尝试在Windows 7 64位操作系统上安装Wamp服务器(以下是确切的设置名称)。但它从未启动,图标保持橙色,意味着某些服务未启动。

wampserver2.2e-php5.3.13-httpd2.2.22-mysql5.5.24-x64

我没有找到任何解决方案。

No skype, port 80 is not in use.

在Windows服务中,当我手动尝试启动wampapache服务时,它会抛出以下错误:

Windows无法在本地计算机上启动wampapache服务。
错误1053:服务未能及时响应启动或控制请求。

apache_error.log is empty.

在 Windows XP 中,事情以前都很正常。


你尝试过以管理员身份运行它吗?(右键点击,以管理员身份运行) - Bgi
这可能是wampapache缺少某种依赖DLL吗?运行Depends来检查未启动的服务,看看是否存在并行或缺失的DLL问题。除非你已经尝试过了。 - strangefreeworld
你只需要VC++ 2015,如果你将你的php版本更改为最新版本,你会因此得到错误。这就是为什么Apache有php依赖性错误的原因。 - M.Mavini
8个回答

66

我解决这个问题的方法如下:

开始 > 搜索 > cmd.exe(以管理员身份运行)

在命令提示符(cmd.exe)中输入以下内容:

cd c:/wamp/bin/apache/ApacheX.X.X/bin
httpd.exe -e debug

**请注意,ApacheX.X.X是wamp正在运行的Apache版本。

这将输出Apache服务器正在做什么。导致Apache无法加载的错误应该在其中。我的问题是httpd.conf试图加载一个丢失或损坏的DLL(php5apache2_4.dll)。只要我覆盖了这个文件,重新启动了Wamp,一切就都很顺利了。


2
这帮助我发现端口80不可用,然后下一个答案完成了解决方案。 - Mike Lyons
1
在我的情况下,msvcr100.dll文件丢失了,我从这里下载了它:“http://www.dll-files.com/dllindex/dll-files.shtml?msvcr100”,并将其放置在system32文件夹中。当我放置该文件时,WAMP图标立即自行变为绿色!!! - Gem
同时SSL也可能会出现问题。在httpd.conf中注释掉#Secure(SSL / TLS)连接#Include conf / extra / httpd-ssl.conf,否则可能会出现以下错误:(OS 10048)每个套接字地址(协议/网络地址/端口)只允许使用一次, :AH00072:make_sock:无法绑定到地址[::]:443(OS 10048)每个套接字地址(协议/网络地址/端口)只允许使用一次, :AH00072:make_sock:无法绑定到地址0.0.0.0:443 - Junior Mayhé
1
这是唯一且最佳的答案。无论Apache出了什么问题,任何错误日志都可以使用此命令转储。 - LogixMaster
工作得很好。这是因为我将路由器的IP地址从192.168.1.69更改为192.168.0.15,并在我的http.conf文件中提到了这一点。 - Sean
你不需要覆盖它,只需安装vc++ 2015即可。(你认为wampserver会发布一个这么长时间的损坏文件吗?) - M.Mavini

21

我是这样解决问题的:

  • 在橙色的WAMP图标上,点击Apache > Service > Test Port 80。返回“端口80不可访问--(可能是Skype)”
  • 退出Skype并关闭该程序。
  • 点击橙色图标,然后点击Apache > Service > Install Service
  • 点击橙色图标,然后点击Apache > Service > Start Service
  • 点击橙色图标,然后点击Put Online
  • 图标变为绿色,服务已启动并上线

除了检查可能存在的其他错误(如多个Apache实例或其他占用80端口的应用程序)之外,您还需要检查Apache和Windows日志。 - danielpopa
这就是解决方案!SKYPE >:E - Mike Lyons
不需要安装服务和上线,只需退出Skype(或更好的方法是在Skype选项>连接中设置另一个端口而不是80)。 - T.Todua
如果您已经启动了Apache服务(不是WampApache),请停止它。 - Nice Books
也可以查看这个链接 https://dev59.com/8Wkw5IYBdhLWcg3w1d4m - yu yang Jian
这个回答和被采纳的回答都有帮助。在我的情况下,还有另一个正在运行的Apache版本覆盖了端口80。在服务管理器中禁用它后,一切都恢复正常了。两个回答都点赞了。谢谢! - Rorok_89

3
请按照以下步骤操作(摘自此Youtube视频):
  1. 退出Skype
  2. 卸载IIS
    • 进入控制面板
    • 找到“程序和功能”
    • 点击“打开或关闭Windows功能”
    • 查找“Internet信息服务”
    • 卸载

如果您不想关闭Skype,这里有一个链接: https://dev59.com/vm445IYBdhLWcg3wyc9k - Albert Hendriks

1
你只需要安装Visual C++运行库2015即可,如果你将php版本更改为最新版本,则会出现错误。这就是为什么Apache会出现php依赖性错误的原因。

0

1
在Skype中,转到“工具”>“选项”>“高级”>“连接”,取消选中“将端口80和443用作传入连接的备选方案”的复选框。 - chanchal sakarde

0

您可以打开Windows事件查看器以尝试获取有关错误的更多信息:在Windows日志的“应用程序”部分中,您很可能会发现来自Apache的错误消息。(至少我在那里找到了我的问题所在!)


0

我打开了 C:\wamp\bin\apache\Apache2.4.4\bin 并运行 httpd,然后 Apache(粉白色的图标)加载到系统托盘中,同时橙色的 W 也变成了绿色。

Apache 服务未在服务列表(开始菜单 > 输入 services)中运行,所以它是橙色的而不是绿色的。

解决方法:重新安装解决了我的问题。

我的版本信息如下: WAMPSERVER (64位 & PHP 5.4) 2.4 Apache:2.4.4 MySQL:5.6.12 PHP:5.4.12 PHPMyAdmin:4.0.4 SqlBuddy:1.3.3 XDebug:2.2.3 http://www.wampserver.com/en/


0

请检查您的Apache错误日志。我遇到了这个错误:“[error](OS 5)拒绝访问:无法打开传输日志文件C:/wamp/logs/access.log。无法打开日志” 然后我将我的“access.log”重命名为其他名称,如果您不需要/从未查看过您的访问日志,则可以删除它。然后重新启动您的Apache服务。这是因为文件大小太大。我认为如果您尝试使用记事本打开此文件,它将无法打开,我以前曾尝试打开过。希望这有所帮助。


在我的情况下(因为Apache从未正确启动),错误日志文件尚不存在。 - Mike Lyons

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