1

因此,直到昨天的 Windows 更新,我才能够顺利运行 Wamp64 Server。然而,今天它给出了“1 of 2 services running”的消息。

调查表明 MySQL 8.0.14 正在运行,但 Apache 2.4.23 没有。

这是我到目前为止所尝试的:

  • 重新启动计算机并重新启动 Wamp
  • 完全关闭计算机并重新启动 Wamp
  • 在 Wamp 菜单中点击“开始/恢复服务”
  • 在 Wamp 菜单中点击“安装服务”(然后启动/恢复服务)
  • 在 Wamp 菜单中点击“卸载服务”,然后点击“安装服务”(然后启动/恢复服务)
  • 做这两件事并重新启动
  • 调查 Apache 错误日志:
[Fri Aug 02 18:30:25.703267 2019] [core:warn] [pid 1376:tid 620] AH00098: pid file D:/wamp64/bin/apache/apache2.4.23/logs/httpd.pid overwritten -- Unclean shutdown of previous Apache run?
[Fri Aug 02 18:30:25.711267 2019] [auth_digest:notice] [pid 1376:tid 620] AH01757: generating secret for digest authentication ...
  • 在此之前在日志中进行调查:
[Thu Aug 01 18:33:16.532470 2019] [mpm_winnt:notice] [pid 22072:tid 660] AH00422: Parent: Received shutdown signal -- Shutting down the server.
[Thu Aug 01 18:33:18.849146 2019] [mpm_winnt:notice] [pid 28536:tid 588] AH00364: Child: All worker threads have exited.
[Thu Aug 01 18:33:24.784874 2019] [mpm_winnt:notice] [pid 22072:tid 660] AH00430: Parent: Child process 28536 exited successfully.
  • 谷歌搜索这些错误,看看我是否能找到任何东西(不幸的是相对不成功)
  • 禁用 Skype(以释放端口 80)并重做上述大部分操作
  • 从管理命令行运行以下命令:
apacha2.4.23\bin\httpd.exe -k install
apacha2.4.23\bin\httpd.exe -k start
apacha2.4.23\bin\httpd.exe -k wampapache64 -k start
apacha2.4.23\bin\httpd.exe -e warn

这肯定会启动服务,但随后会立即给出有关未正确关闭的错误。

任何建议将不胜感激,我通过 Wamp 安装了一个大型本地 wiki,我真的不想失去对它的访问权限。

其他信息

  • Wamp64
    • Wampserver 3.1.7
    • phpMyAdmin 4.8.4
    • MySQL 8.0.14
    • 阿帕奇 2.4.23
  • 系统
    • 操作系统:Microsoft Windows 10 家庭版
    • 版本:10.0.18362 内部版本 18362
    • 系统类型:x64
    • 可用物理内存:11.2 GB
    • 磁盘可用空间:19.3 GB(在 C: 上),115 GB(在 D: 上,安装了 Wamp)

谢谢!

编辑1:

正如这里所建议的,是问题开始那天的错误消息:

在此处输入图像描述

从今天开始的一个:

在此处输入图像描述

编辑2:

所以关于下面的一个很好的答案,我做了以下事情(不幸的是,仍然注意到工作,但这感觉像是进步):

我运行以下没有错误:

.\wamp64\bin\apache\apache2.4.23\bin\httpd.exe -k wampapache64 -k start
.\wamp64\bin\apache\apacha2.4.23\bin\httpd.exe -e warn

接下来我跑了:

.\wamp64\bin\apache\apache2.4.23\bin\httpd.exe -k stop
The 'Apache2.4' service is not started.

.\wamp64\bin\apache\apache2.4.23\bin\httpd.exe -k uninstall
Removing the 'Apache2.4' service
The 'Apache2.4' service has been removed successfully.

然后我重新启动了我的电脑。

在此之后,我从http://wampserver.aviatechno.net/#vcpackages下载了Checks VC++ packages installed文件 ( check_vcredist) 。运行它注意到没有安装 Visual C++ 2015-2019 x86 Minimum Runtime - 14.22.27821 和 Visual C++ 2015-2019 x64 Minimum Runtime - 14.22.27821,所以我从同一个 URL 安装了它们(VC 2015-2019 (VC16 x86) 14.22.27821 和 VC 2015-2019 (VC16 x64) 12.22.27821)。

然后我再次重新启动了我的电脑并运行了 WAMP64,不幸的是它仍然给出了一个1 of 2 services running错误。

但是,我仍然在日志文件 ( apache_error.log) 中收到类似的错误:

Starting the 'Apache2.4' service
The 'Apache2.4' service is running.
ore:warn] [pid 12936:tid 548] AH00098: pid file D:/wamp64/bin/apache/apache2.4.23/logs/httpd.pid overwritten -- Unclean shutdown of previous Apache run?
[Thu Aug 22 14:47:59.335006 2019] [auth_digest:notice] [pid 12936:tid 548] AH01757: generating secret for digest authentication ...
[Thu Aug 22 14:48:34.000409 2019] [core:warn] [pid 31212:tid 584] AH00098: pid file D:/wamp64/bin/apache/apache2.4.23/logs/httpd.pid overwritten -- Unclean shutdown of previous Apache run?

编辑 3:

现在我得到以下信息:

.\wamp64\bin\apache\apache2.4.23\bin\httpd.exe -k wampapache64 -k start
[Thu Aug 22 15:13:02.139389 2019] [mpm_winnt:error] [pid 6824:tid 484] (OS 2)The system cannot find the file specified.  : AH00436: No installed service named "Apache2.4".
.\wamp64\bin\apache\apache2.4.23\bin\httpd.exe -k wampapache64 -k start
[Thu Aug 22 15:13:28.453760 2019] [mpm_winnt:error] [pid 1348:tid 488] (OS 2)The system cannot find the file specified.  : AH00436: No installed service named "Apache2.4".
.\wamp64\bin\apache\apache2.4.23\bin\httpd.exe -k stop
[Thu Aug 22 15:13:40.899096 2019] [mpm_winnt:error] [pid 11400:tid 164] (OS 2)The system cannot find the file specified.  : AH00436: No installed service named "Apache2.4".
.\wamp64\bin\apache\apache2.4.23\bin\httpd.exe -k uninstall
[Thu Aug 22 15:14:13.829391 2019] [mpm_winnt:error] [pid 13820:tid 468] (OS 2)The system cannot find the file specified.  : AH00436: No installed service named "Apache2.4".
4

3 回答 3

2

好的,您应该做的第一件事是放慢速度并确定问题,然后再尝试使用散弹枪进行修复。

不确定您执行操作的确切顺序,但是当您执行这些命令时

apacha2.4.23\bin\httpd.exe -k install
apacha2.4.23\bin\httpd.exe -k start
apacha2.4.23\bin\httpd.exe -k wampapache64 -k start
apacha2.4.23\bin\httpd.exe -e warn

你肯定开始混淆这个问题。

这条线

apacha2.4.23\bin\httpd.exe -k install

将 Apache 安装为服务,但使用服务名称“Apache2.4”,换句话说,您现在将安装 2 个 Apache 服务。一个叫做“Apache2.4”,一个叫做“wampapache64”<-这个是正确命名的 WAMPServer。

这样做的另一个问题是新服务“Apache2.4”将安装“自动启动”属性集,因此它将在每次启动过程中自动启动。因此,自从您执行此操作后,当您尝试启动 WAMPServer 时,此版本的 Apache 将已经运行,当然您不能同时使用端口 80 的 2 个服务,因此 WAMPServers 版本的 Apache (wampapache64) 将无法开始。这也许可以解释您的“2 个服务中的 1 个正在运行”的情况

这条线

apacha2.4.23\bin\httpd.exe -k start

将启动新的“Apache2.4”服务。

这2行

apacha2.4.23\bin\httpd.exe -k wampapache64 -k start
apacha2.4.23\bin\httpd.exe -e warn

应该产生错误吗?

所以现在要回到正确的 WAMPServer 设置,您应该像这样停止并删除“Apache2.4”服务

wamp64\bin\apache\apacha2.4.23\bin\httpd.exe -k stop
wamp64\bin\apache\apacha2.4.23\bin\httpd.exe -k uninstall

注意:所有这些功能都由wampmanager菜单执行

left click wampmanager -> Apache -> Service Manager -> Remove Service

left click wampmanager -> Apache -> Service Manager -> Install Service

最好坚持单独使用它们。

现在重新启动PC,以确保!然后尝试启动 WAMPServer。现在查看\wamp64\logs“apache_error.log”的文件夹并启动事件查看器并查看它以查看 WAMPServer 版本的 Apache 生成了哪些错误。

如果您报告任何错误,我们可以开始尝试调试 Windows 更新后实际发生的情况。

在这些情况下,检查是否安装了所有 MSVC 运行时库总是一个好主意。我不知道为什么 Windows 升级会删除其中任何一个,但让我们先检查一下。

所以下载“检查 VC++ 安装包”实用程序,它可以在 WAMPServer Backup Repo 底部附近找到以获得最新的最棒的版本。

于 2019-08-19T09:08:05.940 回答
1

不小心点击了 PHP 7.2“以前 Apache 运行的不干净关闭?”

点击 WAMP -> PHP -> 版本 -> 7.3

直接开机了。PHP 7.3 模块无法回到 7.2 并导致 Apache 死机。

于 2021-11-16T04:43:06.570 回答
0

这是最奇怪的事情,我不以任何方式推荐这个……但这让它起作用了。

我复制了整个 WAMP 文件夹。然后我在原始文件夹中卸载。然后我复制了所有 MySQL 8.0.14 的东西,重新安装了 MySQL 8.0.14。而且...它奏效了。我只需要在 WAMP 菜单中将服务切换到 8.0.14 就可以了。

我不知道为什么会这样或它是如何工作的,但它确实如此,而且它确实如此,我立即 SQL 转储了我的完整数据库,并且我正在迁移到一个不同的非 WAMP 平台。非常抱歉,我无法详细说明到底发生了什么。但是,我接受 RiggsFolly 的回答,因为我认为他的建议在大多数情况下都会起作用。

于 2019-10-18T20:06:41.997 回答