我刚刚重新安装了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
我该如何解决这个问题?
30 回答
打开Skype .
工具 - >选项 - >高级 - >连接 .
禁用“ Use port 80 and 443 for alternatives for incoming connections ”
注销并关闭所有Skype窗口 . 尝试重新启动Apache .
我试图在cmd中执行httpd.exe并得到httpd-vhosts.conf中存在语法错误的错误 . 我检查了文件,发现了什么问题,现在工作正常 .
因此,如果您遇到此错误,则可能是因为httpd-vhosts或任何其他文件 .
尝试通过cmd执行程序,您将获得错误详细信息以及语法错误的行 .
祝你好运
在XAMPP控制面板V3.2.1中,单击右上角的“NetStat”按钮 . 确保任何其他程序不使用端口80 . 然后点击它下方的“Shell” . 发出此命令“键入ap然后选择TAB两次”
您实际上会看到Apache失败的确切错误 . 它很可能是虚拟主机配置问题,也可能是其他问题 . 它将显示发生错误的行号 . 只需修复该错误 . 请注意,在RootDocument中,尾随\也可能是错误的来源 . 删除任何尾随的“\” .
有关详细解答,check here
对我来说,当我在Windows 8计算机上托管VPN连接时,这个问题就开始了 .
Simply deleting the connection from "Control Panel\Network and Internet\Network Connections" solved the problem.
在我的情况下,这发生在安装sql server之后,解决方案如本答案中所述
Xampp - Can't start Apache after install SQL Server and Visual Studio
所以我不得不从Windows服务中禁用“SQL Server Reporting Services”服务
如果您使用的是Windows 7 . 在Windows搜索中搜索IIS(单击左下角的“窗口”图标,然后键入“搜索程序和文件”的位置) .
打开 IIS (Internet Information Service) .
在动作面板的右侧 . 单击停止 .
注意:屏幕截图中的停止链接已淡出 . 因为我已经停止了 .
问题解决了!
下载新的xampp apachefriends
安装它
删除所有VPN应用
打开文件夹XAMPP运行setup_xampp.bat
运行xampp-control.exe
发生此错误的原因是为其他程序使用为Apache分配的端口 . 要检查使用我们为Apache分配的端口的应用程序,可以单击,
Netstat 按钮 .
这是Netstat文件,
首先,我为Apache分配了端口8080,我最近安装了Oracle DB.TNSLSNR.exe现在使用了8080端口 .
因此,通过查看此文件,我们可以选择一个不与其他应用程序冲突的端口 . 就我而言,端口8060与任何应用程序都没有冲突 . 通过选择我们可以如上所述更改 httpd.conf 文件(XAMPP控制面板 - >配置) .
我有时会遇到同样的问题 . 我有一台旧笔记本电脑,几乎所有端口都被堵塞或发生故障 . 这就是我做到的 .
打开XAMPP控制面板 .
点击 Config
然后,进入 Apache httpd.conf 文件 . 用文本编辑器打开它 .
搜索 "80" (按Ctrl F并找到所有这些 . 将其替换为 8080 or 4040 or 4000 ) .
保存文件 . 然后重启XAMPP .
它对我很有用,我希望它对你也有帮助 .
您可以做的简单事情是检查机器中是否安装了Skype或VMware .
Skype使用端口80和443作为传入连接的附加端口 . 要更改Skype中的端口号,请转到
在Skype窗口中 . 现在将默认的80端口号更改为其他端口号 .
VMware Workstation使用端口443进行共享 . 要更改此设置,请打开VMware Workstation并转到
单击"Change Settings"但是
然后点击"Disable Sharing"
然后更改正在使用的https端口号(443)
然后您可以单击"Enable Sharing"按钮
这就是你所要做的 . 重新启动XAMPP并运行Apache服务器 .
我的问题是在httpd.conf中,
DocumentRoot
和<Directory>
条目指向不存在的文件夹 .例如,'原始'httpd.conf具有以下条目:
如果您已安装在C:\ xampp中,则需要更改这些条目以匹配,即
当我在开发人员面临防火墙问题的企业环境中工作时,其他任何答案都没有解决我的问题 .
由于该端口不是由Skype使用,而是由其他一些内部应用程序使用,因此我按照以下步骤解决了该问题:
Step 1 - 在XAMPP控制面板的Apache下,单击Config按钮,然后选择Apache(httpd.conf) .
在 httpd.conf 文件中,不知怎的,我发现了一行说:
并将80更改为您想要的任何数字/端口 . 在我的场景中,我使用端口8080 .
仍然从 httpd.conf 文件,我发现另一行说:
将80更改为8080 .
Step 2 - 在XAMPP控制面板的Apache下,再次单击Config按钮,但这次选择Apache( httpd-ssl.conf ) . 在 httpd-ssl.conf 文件中,找到说明的行
并将443更改为您想要的任何数字/端口 . 我将使用 4433 作为新的端口号 .
仍然从 httpd-ssl.conf 文件,找到另一行说
并将 443 更改为 4433 .
记得保存 httpd.conf 和 httpd-ssl.conf 执行一些更改后的文件 . 然后重启Apache服务 .
我通过停止服务"Web Deployment Agent Service"解决了这个问题 . 打开:系统 - >计算机管理 - >服务 - > Web部署代理服务 . 停止此服务并启动XAMPP工作 . 我认为这是MS Webmatrix的服务 .
(德语:Systemsteuerung - > System und Sicherheit - > Verwaltung - > Dienste - > Webbereitstellungs-Agent-Dienst)
我有同样的问题,结果我忘了运行
setup_xampp.bat
(便携版) .最佳方案
打开XAMPP控制面板,单击Apache的配置,然后在文本编辑器中单击Apache(httpd.config).now . ctrl f - > find "Listen 80"并将其替换为"Listen 8079",而不是引用:)但是现在你必须像这样使用http://localhost:8079/
P.S,我试图更改skype的端口设置,停止在Windows 10中找不到的Web部署代理服务,cmd - > net stop http和其他方法,但除此之外没有任何工作 .
首先确保你的
\xampp
文件夹在根目录中!这很重要,因为路径是相对的 .然后确保使用管理员权限运行
xampp_control.exe
.然后更改以下文件以避免阻塞端口80出现问题 .
在
\xampp\xampp-control.ini
中应该设置:找到
\xampp\apache\conf\httpd.conf
并设置:找到
\xampp\apache\conf\extra\httpd-ssl.conf
并设置:然后结束所有服务并使用管理员权限重新启动
xampp-control.exe
. 它应该运行!默认情况下,Apache服务器在端口80,443上运行 . 您的问题是两个端口中的一个或两个都忙 . 通常Skype或VMware Workstation使用这两个端口 . 所以,确保它们没有运行 . 确保端口在Windows上免费的最佳方法是:
对我来说,万维网发布服务正在使用端口80.我通过在cmd上运行以下命令来杀死它:
之后,XAMPP运行Apache没有任何问题 .
似乎没有人回答有关执行xampp_start.exe的问题 .
我做了以前的所有答案,但没有解决我的问题 . 我发现运行xampp_start.exe会给你一个关于这个问题的详细信息 .
这是我在我看来:
如您所见,我遇到路径问题或者xampp指向不存在的文件夹 .
当我发现使用命令时没有使用端口80的进程
使用端口80没有任何进程的问题 .
然后我跑了命令(在cmd)
它在
httpd-vhosts.conf
文件中的虚拟主机配置中显示了一些错误,该文件最近由我编辑,用于安装在Eclipse IDE中的WordPress PHP环境中 . 所以我删除了这些行,Apache完美地启动了 .我有与OP完全相同的错误消息,但我的问题没有得到任何现有答案的解决 . 许多答案都涉及端口80上的冲突,我知道我没有,因为我最近在端口80上有localhost响应 .
事实证明,当我打算更改 DocumentRoot (愚蠢,我知道)时,我无意中更改了 ServerRoot ,虽然新的 ServerRoot 目录已存在,但它不包含配置文件和其他所需的apache,这导致它在启动时失败 . 错误消息可能通过措辞“缺少依赖性”来解决此问题 .
在我的Windows系统上,将ServerRoot设置回 C:/XAMPP/apache 解决了问题 .
首先,您应该验证httpd-vhosts文件中没有多余的虚拟主机 . 我的意思是遵循简单的规则:1个项目=配置文件中的1个虚拟主机 . 否则,即使您要更改端口等,也会遇到错误 .
我有同样的问题(在Windows 8.1上),但我修复它只是通过提取到
C:\
而不是C:\somefolder
,就像我最初做的那样 . 因此,控制面板的路径,例如,现在C:\xampp\xampp-control.exe
您可以做的一件事是通过发布来停止端口80上的服务
在一个cmd . 系统会询问您是否确定要停止这些服务 . 我发现我有一些我没有使用过的服务禁用他们 .
要查看其他人在cmd中使用端口80类型
我假设您要在端口80上运行Apache . 如果是这种情况并且您希望保留冲突的服务,则需要将它们与新端口关联 .
如果问题不是繁忙的端口,您还可以尝试以下操作:在XAMPP配置面板中选择“show debug information” . 启动Apache时,您将看到类似“执行”c:\ xampp \ apache \ bin \ httpd.exe的内容 . 如果您运行该
在cmd中,您将获得更多信息(例如,我曾经对我的httpd.conf文件有一些问题) .
相关:How do I free my port 80 on localhost Windows?和Apache won't run in xampp
Windows用户的最佳解决方案是:
Open netstat(来自XAMPP CONTROL PANEL)
查找使用端口80的进程的PID .
使用Administrative打开CMD .
运行
taskkill /pid PID
(而不是PID使用从netstat找到的pid u)Heyy享受你完成.....
由于默认端口80因Apache而被阻止 . 您需要更改端口或使端口可访问 .
转到Apache安装中的 Apache configuration (httpd.conf) 文件 .
找到这些行:
#
Listen 192.168.1.2:80
Listen 80
#
改变如下
Listen 192.168.1.2:8081
Listen 8081
现在,当您访问localhost时,您必须将该端口显式添加为http://localhost:8081/ ...
跟着这些步骤:
打开XAMPP控制面板,然后单击其"Config"
选择“Apache(httpd.conf)”并在下面找到此代码并将其更改为以下代码:
Listen 80
保存(Ctrl S)
之后,返回XAMPP控制面板并再次单击其配置 .
选择"Apache (httpd-ssl.conf)",在下面找到此代码,然后重新更改:
Listen 443
保存(Ctrl S)
然后,单击"config"(注意:在netstat上方)并单击"service and port settings" .
将"Main Port"更改为8080并将"SSL Port"更改为4433,然后保存 .
最后,转到"control panel" - > "Programs & Features" - > "Turn Windows On or Off" .
取消选中"Internet Information Services",然后单击“确定” .
只需等待它,您的计算机/笔记本电脑将自动重启并尝试再次打开您的XAMPP控制面板,然后启动您的Apache .
在我的情况下,这个问题是由尝试下载bitnami的其他产品引起的,如WordPress . 当我们通过XAMPP安装WordPress时,这很常见 . 它位于
xampp/app
目录中,可以从XAMPP应用程序主页访问 .作为解决方案,我从
xampp
目录中删除了默认安装的WordPress,并通过下载并将zip文件解压缩到htdoc
文件夹中,在WordPress的htdocs
文件夹中手动安装了WordPress . You also need to restart XAMPP or may system after uninstalling/removing the default WordPress . 现在一切都好了 .其中一个原因可能是您没有以管理员身份运行XAMPP控制面板 .
请注意,每当您更改默认端口时,您的浏览器都不会知道 .
80
和443
似乎在某种程度上是标准的,例如,如果您将80
更改为8080
,则必须以这种方式访问您的网站:localhost:8080/path_to_your_website.php