我刚刚重新安装XAMPP,当我试图在XAMPP控制面板中启动我的Apache服务器时,我现在得到以下错误:

16:50:25  [Apache]     Status change detected: running
16:50:26  [Apache]     Status change detected: stopped
16:50:26  [Apache]     Error: Apache shutdown unexpectedly.
16:50:26  [Apache]     This may be due to a blocked port, missing dependencies,
16:50:26  [Apache]     improper privileges, a crash, or a shutdown by another method.
16:50:26  [Apache]     Press the Logs button to view error logs and check
16:50:26  [Apache]     the Windows Event Viewer for more clues
16:50:26  [Apache]     If you need more help, copy and post this
16:50:26  [Apache]     entire log window on the forums

我怎么解决这个问题?


当前回答

如果更改端口不能解决上述建议的问题,并且如果您可能玩弄了文件目录结构(例如,在安装后更改文件夹的名称,就像我所做的那样),那么您可以尝试这样做,

打开XAMPP控制面板,点击Apache的“配置” 选择Apache (httpd.conf) 在打开的编辑器中,按CTRL+H找到旧文件夹名的所有实例,并用新文件夹名替换它。

例如,在我的例子中,我已经将XAMPP的主安装文件夹名称从Xam更改为XAMPP

在编辑器中修改如下:

Define SRVROOT "G:/Xam/apache"
ServerRoot "G:/Xam/apache"
DocumentRoot "G:/Xam/htdocs"
<Directory "G:/Xam/htdocs">

To

Define SRVROOT "G:/Xampp/apache"
ServerRoot "G:/Xampp/apache"
DocumentRoot "G:/Xampps/htdocs"
<Directory "G:/Xampps/htdocs">

在编辑器中还有许多其他这样的实例,只需找到并替换它们中的每一个。

对Apache (httpd-ssl.conf)也执行同样的操作。

其他回答

您可以做的一件事是通过发出命令停止端口80上的服务

net stop http

在cmd中。系统将询问您是否确定要停止这些服务。我发现我有一些服务我没有使用,并关闭了它们。

要查看还有谁正在使用端口80,请键入cmd

netstat -abno

我假设您希望在端口80上运行Apache。如果是这种情况,并且希望保留冲突的服务,则需要将它们关联到一个新的端口。

如果问题不是端口繁忙,您也可以尝试以下方法:在XAMPP配置面板中选择“显示调试信息”。当启动Apache时,会显示类似“正在执行”c:\xampp\ Apache \bin\httpd.exe”的内容。如果你运行它

c:\xampp\apache\bin\httpd.exe

在cmd中,你会得到更多的信息(我曾经有一些问题与我的httpd.conf文件)。

相关:如何释放我的端口80在本地主机Windows?Apache不能在xampp中运行

在我的情况下,这个问题是由于试图下载bitnami的其他产品,如WordPress。这在我们通过XAMPP安装WordPress时很常见。它被放置在xampp/app目录中,可以从xampp应用程序主页访问。

作为解决方案,我从xampp目录中删除了默认安装的WordPress,并手动将WordPress安装在WordPress的htdocs文件夹中,方法是下载并将zip文件解压到htdoc文件夹中。在卸载/删除默认WordPress后,您还需要重新启动XAMPP或系统。我现在一切都好了。

似乎没有人回答关于执行xampp_start.exe的问题。

我做了所有以前的答案,但它没有解决我的问题。我发现运行xampp_start.exe将为您提供有关该问题的详细信息。

这是我在我这边看到的

正如你所看到的,我有一个路径问题或xampp指向不存在的文件夹。

对我来说,这个问题始于我在Windows 8电脑上托管vpn连接时。

简单地删除连接从“控制面板\网络和互联网\网络连接”解决了这个问题。

我试了所有的办法,但我的问题还是没有解决。事实证明,在安装Visual Studio 2019之后,我的c++可重分发文件发生了很多变化。

我实际上在跑步

test_php.bat

它告诉了我错误是什么

C:\Windows\SYSTEM32\VCRUNTIME140.dll' 14.0与此PHP构建不兼容,该PHP构建在未知的第0行中链接到14.28

因此,我开始了:

微软Visual Studio网站->其他工具,框架,和 > Microsoft Visual c++ Redistributable for Visual Studio 2019

和下载。安装文件并重新启动我的电脑后,问题就解决了。Apache现在可以正常运行了