XAMPP - Apache无法启动 - 尝试启动Apache服务

时间:2015-03-16 04:56:49

标签: xampp

在尝试使用XAMPP启动Apache时,我收到了 - "尝试在XAMPP UI中启动Apache服务..." 消息。没有进一步的细节。

我在哪里可以看到日志(我是以管理员身份运行XAMPP)?

Apache - Fails to start

22 个答案:

答案 0 :(得分:19)

如果PORT 80不是问题!

首先检查端口80是否正在使用,因为这可能是个问题。 你可以输入" netstat -an"进入cmd。在本地地址下查找0.0.0.0:80,如果您发现它正在使用中,请遵循@Karthik中的解决方案。但是,我有一个类似的问题,但我的端口80没有使用。 我的XAMPP错误的路径位置,修复此问题的步骤:

1.找出您正在使用的Apache版本,您可以通过查看服务(控制面板,管理工具,服务)找到这个,并在我的情况下查找Apache,它被列为Apache2.4

2.关闭XAMPP。

3.Run cmd as admin。

4.执行'删除" Apache2.4"' (把你的版本放在我的位置,没有周围的',但是用#34;"围绕Apache)。

5.执行'删除" mySQL"'再次删除''当你输入它时。

6.重新启动XAMPP并尝试启动Apache

如果你在使用FileZill,Mercury或Tomcat时遇到问题,你也可以在这里试试,但我自己没有测试过。

希望这有帮助!

答案 1 :(得分:12)

我意识到这是一个端口问题,因为我在我的机器上运行IIS和其他Web服务器。但我更感兴趣的是在UI中看到带有端口号的详细错误消息。

似乎它没有记录在UI或日志文件中(至少在我的情况下),但在事件查看器(控制面板 - >查看事件日志)中。在 Even viewer - >下Windows日志 - >申请

我可以看到类似下面的权限错误:

  

尝试以其访问权限禁止的方式访问套接字。 :AH00072:make_sock:无法绑定到地址0.0.0.0:443

要修复SSL端口的此权限问题,请更改 httpd-ssl.conf 中的以下行(C:\ xampp \ apache \ conf \ extra)

 # When we also provide SSL we have to listen to the 
 standard HTTP port (see above) and to the HTTPS port

     Listen xxx

将XXX替换为您机器中打开的任何有效端口号

如果您遇到端口80问题,请更改 httpd.conf 文件(C:\ xampp \ apache \ conf)

# Change this to Listen on specific IP addresses as shown below to 
# prevent Apache from glomming onto all bound IP addresses.
#
#Listen 12.34.56.78:80
 Listen 127.0.0.1:8000

我还总结了我遇到的其他解决方案:

  1. Skype通常会阻止Apache端口。所以终止它并再试一次。
  2. 找到使用阻止端口(netstat -ano)的进程ID(PID)并终止Windows任务管理器中的相应进程。

答案 2 :(得分:4)

启动xampp(以管理员身份), (1)右键单击C:\ xampp \ xampp-control.exe,并以管理员身份运行。 (2)unistall服务模块然后安装服务模块。 (3)现在尝试启动apache和mysql。

答案 3 :(得分:3)

检查您的DocumentRoot路径(在httpd.conf中);一个错字可能会导致这个问题。

答案 4 :(得分:2)

更新到PHP7.2时遇到同样的问题

<强>问题: 首先,我关闭了Skype,然后检查端口80是否不是问题。你怎么检查?请参阅上面的@AlexT评论。

就我而言,端口80不是问题。所以现在我必须弄清楚出了什么问题。所以我检查了错误日志控制面板&gt;甚至观众&gt; Windows日志&gt;应用程序,发现以下针对Apache2.4的错误

  

httpd.exe:C:/xampp / apache / conf / http:http:5行520的语法错误:C:/xampp / apache / conf / extra / httpd-xampp.conf的第18行语法错误:不能将C:/xampp/php/php7ts.dll加载到服务器:名为的Apache服务不是有效的Win32应用程序。

这意味着我安装了错误的PHP版本。实际上我下载了win64版本,而所需版本是Win32版本。

所以我从以下版本下载了正确的版本:Download PHP 7.2.0 C:/ xampp / php 文件夹中解压缩,重新启动了apache并且工作正常:)

答案 5 :(得分:1)

我遇到了同样的问题,在xampp文件夹中执行“ setup_xampp.bat”解决了我的问题。

答案 6 :(得分:1)

我遇到了同样的问题,但是是因为我以前已经安装了xampp,并且尝试安装一个较新的版本,然后将这个较新的版本安装在另一个文件目录中(我将其命名为文件目录xampp2)。卸载较新的版本,重命名旧的版本(我重命名为xamppold),然后再次安装xampp后,我解决了该问题。

我想如果您没有在另一个文件目录中安装xampp之类的东西,那么重新安装xampp应该就足够了。如果您担心文件,则始终可以在重新安装xampp之前进行备份。

在查看了xampp活动日志(底部列表)并意识到xampp试图打开coustom文件路径后,我解决了问题,但是我有另一个路由路径。如果第一个选项不起作用,至少您可以在活动日志中向上滚动,查看以admin身份启动并尝试重新安装Apache模块或尝试启动该模块时遇到的错误。

您可能会迷惑为什么我不只是从一开始就简单地卸载整个程序,答案是我为一些不同的项目调整了xampp的几项内容(从更改端口,将.dll添加到在Apache中运行mongo.db),而我又懒得再做一遍:b

我希望我的回答对任何人都有用,因为这是我第一次写stackoverflow:)

欢呼

答案 7 :(得分:0)

在 Xampp 控制面板中,单击 config(Apache 旁边),然后选择 Apache(httpd.config),搜索 listen 80 并将端口更改为另一个端口。

答案 8 :(得分:0)

如果您曾经编辑过,请确保端口号前面没有空格。

答案 9 :(得分:0)

还要检查您的xampp是否安装在主目录(例如C或D或E)中,而不是安装在该目录的文件夹中或内部?即(“ D:/ Xampp”或“ D:/ something / Xampp”)如果不在目录的主路径中,则会显示此错误。

将xampp目录从“ D:\ Something \ Xampp”复制到“ D:”
这样就变成了这样的“ D:\ Xampp” 问题就会解决。

答案 10 :(得分:0)

对我来说,这不是端口或服务问题;我不得不重新运行XAMPP安装脚本。尽管这并不能直接为我解决问题,但该脚本比XAMPP日志更为冗长,为我提供了正确解决问题的正确方向。

在XAMPP GUI中,单击 Shell ,键入set,按 Tab 以自动完成到setup_xampp.bat文件,然后按< kbd>输入以运行它。

就我而言,我得到以下输出:

[ERROR]: Test php.exe failed !!!
[ERROR]: Perhaps the Microsoft C++ 2008 runtime package is not installed.
[ERROR]: Please try to install the MS VC++ 2008 Redistributable Package from the Mircrosoft page first
[ERROR]: http://www.microsoft.com/en-us/download/details.aspx?id=5582

此特定错误会引起误解。尽管它指定了Visual C ++ 2008可再发行组件包,但PHP 7.4.x要求使用Visual C++ 2019 Redistributable Package

安装完该程序并按照提示重新启动后,请确保我现在能够正常启动Apache。

答案 11 :(得分:0)

对于我来说,在同样的问题和Xampp窗口中,我已经将 \ apache \ conf \ extra \ httpd-vhosts.conf 条目从旧的Xampp版本复制到了新安装的版本中,可以继续在浏览器中打开本地项目。虚拟主机路径之一是错误的。删除该条目后,Apache开始正常运行。

@Karthik在事件查看器(“控制面板”->“查看事件日志””中的“ ”引用)节省了我的时间。假设Xampp日志会指出问题,这太容易了。

答案 12 :(得分:0)

我遇到了同样的问题,只需单击服务按钮,然后找到apache并右键单击>属性>将启动类型设置为自动/手动。现在关闭apache,然后重试。它将起作用!

enter image description here

答案 13 :(得分:0)

我在“程序文件”下安装时遇到了此问题,由于写问题,他们不建议这样做。仅当您未以管理员身份登录并使用密码进行安装时,这才可能是一个问题。我只是卸载并安装在不需要管理员权限的目录中。

答案 14 :(得分:0)

尝试安装XAMPP的x86版本。他们网站上的默认XAMPP版本是x64(可能是因为我使用的是x64 Windows 7)。 download link here

答案 15 :(得分:0)

对于那些意外(或未更改).conf文件之一并且即使尝试了上述所有解决方案后apache也无法运行的人。

跟踪问题所在的一种简单方法是通过命令提示符运行Apache:

(在Windows上):以管理员身份打开命令提示符,然后在Apache的bin文件夹中导航,然后运行

httpd以运行apache

  

C:\ xampp \ apache \ bin \ httpd

我的情况是:

apache via cmd

有人在导致问题的特定文件中添加了虚拟主机。我评论了这些内容,Apache运行正常。

答案 16 :(得分:0)

我在httpd.conf中有一个硬编码的IP,我的本地IP发生了变化,这导致了我的问题,更改了IP并且全部再次工作

答案 17 :(得分:0)

我测试了所有可能的选项后,我的情况有所不同。如果您更改了端口并仍然遇到同样的问题,那么您可以试试这些问题。这是在Windows 7中完成的。

步骤1 :转到控制面板确认错误原因 - &gt;系统和安全 - &gt;管理工具 - &gt;事件查看器 - &gt; Windows日志 - &gt;申请 - &gt;错误。我说&#34;名为Apache的服务报告了以下错误:

  

httpd.exe:C:/xampp/apache/conf/httpd.conf第424行的语法错误:无法将c:\ xampp \ php \ php5apache.dll加载到服务器中:找不到指定的模块。 #34;所以我需要将\ php5apache.dll更改为我安装的php和apache版本的版本,这是php7apache2_4.dll

第2步:要获取.dll php和apache文件的正确名称,请转到C:\ xampp \ php。你会看到像文件夹中的其他文件一样的php7apache2_4.dll。

第3步:转到C:/xampp/apache/conf/httpd.conf并编辑配置文件并更改&#34; c:\ xampp \ php \ php5apache.dll&#34 ; to&#34; c:\ xampp \ php \ php7apache2_4.dll&#34;在我的情况下。确保以管理员身份打开文件,保存所做的更改。

第4步:运行xampp服务器,一切正常。在对apache配置文件进行更改之前,请不要忘记关闭xampp服务器。

希望这会有所帮助。干杯! :)

答案 18 :(得分:0)

启动Xampp作为控制台应用程序(只需双击Xampp根文件夹中的xampp_start.exe)是唯一适用于Windows 10(没有Skype,没有Word Wide Web发布服务)的东西。 WampServer和UwAmp也没有工作。

答案 19 :(得分:-1)

针对我的特定情况的解决方案(在感到无聊之前已经工作了几天):

端口80并不是问题,但是我在搞弄服务和启动时做了一些事情。

  1. 在Windows的“开始”菜单上输入msconfig
  2. 点击系统配置

Screenshot for System Configuration

  1. 服务标签中,搜索Apache24(单击窗口底部复选框中的“隐藏所有Microsoft服务”以使其更容易找到)
  2. 如果未选中其复选框,请选中

如果已经检查过,则本指南将无济于事。但是,如果是这样:

  1. 单击“确定”,您的PC必须重新启动
  2. 再试一次!就我而言,一旦打开Xampp,Apache已经在运行了。

答案 20 :(得分:-1)

确保在服务(控制面板,管理工具,服务)中未禁用Apache。如果已禁用,则将其设置为“手动”,它将运行。我就是这样,我发现Apache Disabled。

答案 21 :(得分:-1)

当我运行xampp控制面板时,正常:

enter image description here

我一直在跑

我无法启动apache 所以,我将与管理员一起运行它:

enter image description here

我可以运行apache