Issues with Wamp64 Server

天涯浪子 提交于 2019-12-11 18:05:26

问题


So until yesterday's Windows update I was able to run Wamp64 Server without a hitch. However, today it gives a "1 of 2 services running" message.

Investigating clarifies that MySQL 8.0.14 is running, but that Apache 2.4.23 is not.

Here's what I've tried so far:

  • Restarting the computer and rebooting Wamp
  • Completely shutting down the computer and rebooting Wamp
  • Hitting "Start/Resume Service" in the Wamp menu
  • Hitting "Install Service" in the Wamp menu (and then Start/Resume service)
  • Hitting "Uninstall Service" and then "Install Service" in the Wamp menu (and then Start/Resume service)
  • Doing both of these things and rebooting
  • Investigating the Apache error log:
[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 ...
  • Investigating immediately before this in the log:
[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.
  • Google searching these errors to see if I could find anything (unfortunately relatively unsuccessful)
  • Disabling Skype (to free up Port 80) and redoing most of what's above
  • Running the following commands from the administrative command line:
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

Which definitely starts the service but then immediately gives the errors about not being shut down correctly.

Any advice would be greatly appreciated, I have a large local wiki installed via Wamp and I really don't want to lose access to it.

Other information

  • Wamp64
    • Wampserver 3.1.7
    • phpMyAdmin 4.8.4
    • MySQL 8.0.14
    • Apache 2.4.23
  • System
    • OS: Microsoft Windows 10 Home
    • Version: 10.0.18362 Build 18362
    • System Type: x64
    • Available Physical Memory: 11.2 GB
    • Space Available on Disk: 19.3 GB (on C:), 115 GB (on D:, where Wamp is installed)

Thanks!

EDIT 1:

As suggested here is the error message the day that the issue began:

And one from today:

EDIT 2:

So in regard to a great answer below I've done the following (unfortunately still note working, but this feels like progress):

I ran the following with no errors:

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

Next I ran:

.\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.

Then I restarted my PC.

Following this, I downloaded the Checks VC++ packages installed file (check_vcredist) from http://wampserver.aviatechno.net/#vcpackages. Running it noted that Visual C++ 2015-2019 x86 Minimum Runtime - 14.22.27821 and Visual C++ 2015-2019 x64 Minimum Runtime - 14.22.27821 were not installed, so I installed them from the same URL (VC 2015-2019 (VC16 x86) 14.22.27821 and VC 2015-2019 (VC16 x64) 12.22.27821).

Then I restarted my PC again and ran WAMP64, which still unfortunately gives a 1 of 2 services running error.

However, I'm still getting a similar error in the log file (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?

EDIT 3:

Now I'm getting the following:

.\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".

回答1:


Ok the first thing you should do is slow down and identify a problem before trying to fix it with a scatter gun.

Not sure exactly what order you did things in, but when you did these commands

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

you definitely started to confuse the issue.

This line

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

installs Apache as a service, but with the service name "Apache2.4" in other words you will now have 2 Apache services installed. One called "Apache2.4" and one called "wampapache64" <- this one being the correctly named one for WAMPServer.

The other problem with having done this is that the new service "Apache2.4" will have been installed with the "Autostart" property set, so it will automatically start during each boot process. So ever since you did this, this version of Apache will have already been running when you tried to start WAMPServer, and of course you canno thave 2 services both using port 80, so WAMPServers version of Apache (wampapache64) will not have been able to start. This just might explain your "1 of 2 services running" situation

This line

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

will start the new "Apache2.4" service.

These 2 line

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

should generate errors ?

So now to get back to a proper WAMPServer setup, you should stop and remove the "Apache2.4" service like so

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

NOTE: all these functions are performed by the wampmanager menus by doing

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

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

and it is best to stick to using those alone.

Now restart the PC, just to be sure! And then try starting WAMPServer. Now look in the \wamp64\logs folder at the "apache_error.log" and also start the Event Viewer and look at that to see what errors are being generated by the WAMPServer version of Apache.

If you report back with any errors, we can start trying to debug what actually happened after the Windows Update.

It is always a good idea in these situations to check that you have all the MSVC Runtime libraries installed. I have no idea why a Windows Upgrade would remove any of these, but lets start by checking those first.

So download "Checks VC++ packages installed" utility which can be found near the bottom of the WAMPServer Backup Repo If you already have downloaded this tool in the past, download it again, it changes as new MSVC Runtimes are released, so it is always better to get the latest greatest version.




回答2:


This is the weirdest thing and I DO NOT recommend this in any way whatsoever... But this got it to work.

I copied my entire WAMP folder. Then I uninstalled in the original folder. Then I copied in all of the MySQL 8.0.14 stuff, reinstalled MySQL 8.0.14. And... It worked. I just had to switch the service to 8.0.14 in the WAMP menu and it took right off.

I don't know why this worked or how it worked, but it did and the second it did, I immediately SQL dumped my full database and I'm migrating to a different, non-WAMP platform. I'm extremely sorry that I cannot provide details on what exactly happened. But, I am accepting RiggsFolly's answer because I think what he recommended would work in most cases.



来源:https://stackoverflow.com/questions/57334161/issues-with-wamp64-server

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!