Apache / xampp命令行启动错误:AH00436:没有名为“Apache2.4”的已安装服务

时间:2013-06-14 20:27:25

标签: apache apache2 xampp

我在带有Xampp发行版的Windows 7 Pro上安装了Apache服务器。 Apache从XAMPP控制面板启动很好,但我希望能够从命令提示符控制它。当我尝试从命令提示符启动它时,我收到以下错误:

C:\>httpd -k start [Fri Jun 14 13:21:59.055815 2013] [mpm_winnt:error] [pid 6344:tid 144] (OS 2)The system cannot find the file specified. : AH00436: No installed service named "Apache2.4".

我试图在httpd.conf中更改Listen端口。它没有改变任何东西。有线索吗?

感谢。

10 个答案:

答案 0 :(得分:27)

在我下载Apache 2.4 for Windows并试图第一次启动它之后,我遇到了与“AH00436:没有安装的名为”Apache2.4“的服务完全相同的问题。

解决方案非常简单。当您手动尝试通过“httpd -k start”启动Web服务器时收到错误消息,但尚未定义任何服务。

只需执行“httpd -k install”,即可将Windows服务添加到注册表中。之后,“httpd -k start”无错误消息。

答案 1 :(得分:5)

我在运行相同命令时遇到类似的错误消息,但在我的情况下,我刚安装了来自http://www.wampserver.com/en/的wamp

  

C:\ wampserver \ bin \ apache \ apache2.4.9 \ bin> httpd -k start [Mon Sep 29   14:27:05.203039 2014] [mpm_winnt:错误] [pid 10720:tid 424](OS 2)   系统找不到指定的文件。 :AH00436:没有安装   服务名为“Apache2.4”。

我发现当我在命令行中使用“-n”开关时 要包含Apache Web服务器服务的名称,它就可以工作。

  

C:\ wampserver \ bin \ apache \ apache2.4.9 \ bin> httpd -n wampapache64 -k   启动

所以在我看来,除非使用包含服务的名称 “-n”在命令行中切换,假定该服务的名称 首先是“Apache2.4”。 在我的情况下,我没有名为Apache2.4的服务,因此命令失败。 我确实有一个名为wampapache64的服务,所以当我指定它时 它运行的命令行中的服务名称没有错误。

答案 2 :(得分:1)

我通过安装apache服务解决了这个问题。对于apache,当我去Apache时 - >服务,我甚至无法启动服务,因为这些线路被禁用...所以我安装了服务,水平规则线下面的线。

显然,我的apache不允许在我的计算机上访问...(在安装服务后弹出一个窗口要求"允许访问"用于apache时)在电脑上)

希望这有帮助。

更新的 我使用的是wamp,而不是xampp。

答案 3 :(得分:0)

以上是上述错误的解决方案:

请将httpd.conf文件中的ServerRoot和DocumentRoot指令从默认路径(c:\ Apache24)更改为zip安装路径(当前的apache24 zip提取路径)

ServerRoot“D:\ httpd-2.4.4-win32 \ Apache24”

DocumentRoot“D:\ httpd-2.4.4-win32 \ Apache24 \ htdocs”

之后重启服务器并尝试打开默认页面 http://example.com: 请告诉我你的状态

谢谢, Amarnath Polu&巴斯卡尔

答案 4 :(得分:0)

我遇到了同样的问题并分两步解决了这个问题:

  • 首先,确保Apache 2.4作为服务安装。您可以通过以管理员身份执行Xampp控制面板并单击" service"中的图标来执行此操作。列。

  • 默认情况下,Apache使用2个端口:80和443.您必须确保这些端口是免费的。就我而言,我使用了443端口(SSL)。您可以通过修改" conf / httpd.conf"中的监听端口来更改此设置。 (对于标准端口)和" conf / extra / httpd-ssl.conf" (对于SSL端口)。

祝你好运! 问候。

答案 5 :(得分:0)

如果您安装了Skype,请确保它使用"备用端口"因为它将占用端口80.如果您退出Skype并尝试启动Wamp,它可能会起作用。尝试手动启动httpd服务并收到此错误时,这是​​我的问题。

答案 6 :(得分:0)

我也遇到了同样的问题。当我使用httpd.exe -e warn检查时,显示错误。

  

每个套接字地址(协议/网络地址/端口)仅一种用法   通常是允许的:AH00072:make_sock:无法绑定到地址   [::]:80

     

每个套接字地址(协议/网络地址/端口)仅一种用法   通常是允许的:AH00072:make_sock:无法绑定到地址   0.0.0.0:80

因此,我的错误是Listen中有多个Listen 80条目和httpd.config。我只是评论#Listen 80并重新启动服务,问题已解决。

答案 7 :(得分:0)

如果您没有VMware或Skype,请执行以下步骤:

Xampp控制面板中的

1)->配置-> Apache(httpd.conf)

Listen 80

ServerName localhost:80

<Directory /> AllowOverride none Require all denied </Directory>

<Directory "C:/xampp/htdocs"> ... Require all granted </Directory>

<Files ".ht*"> Require all denied </Files>

<Directory "C:/xampp/cgi-bin"> AllowOverride All Options None Require all granted </Directory>

Xampp控制面板中的

2)->配置-> Apache(httpd-ssl.conf)

Listen 443

<VirtualHost _default_:443>

ServerName localhost:443

3)在Xampp控制面板->配置-> Apache(httpd-xampp.conf)

<Directory "C:/xampp/php"> AllowOverride None Options None **Require all denied** <Files "php-cgi.exe"> **Require all granted** </Files> </Directory>

<IfModule alias_module>

Alias /licenses "C:/xampp/licenses/"

<Directory "C:/xampp/licenses"> Options +Indexes <IfModule autoindex_color_module> DirectoryIndexTextColor "#000000" DirectoryIndexBGColor "#f8e8a0" DirectoryIndexLinkColor "#bb3902" DirectoryIndexVLinkColor "#bb3902" DirectoryIndexALinkColor "#bb3902" </IfModule> **Require all granted** ErrorDocument 403 /error/XAMPP_FORBIDDEN.html.var </Directory>

Alias /phpmyadmin "C:/xampp/phpMyAdmin/"

<Directory "C:/xampp/phpMyAdmin"> AllowOverride AuthConfig **Require all granted** ErrorDocument 403 /error/XAMPP_FORBIDDEN.html.var </Directory>

Alias /webalizer "C:/xampp/webalizer/"

<Directory "C:/xampp/webalizer"> <IfModule php7_module> <Files "webalizer.php"> php_admin_flag safe_mode off </Files> </IfModule> AllowOverride AuthConfig **Require all granted** ErrorDocument 403 /error/XAMPP_FORBIDDEN.html.var </Directory>

</IfModule>

4)找到cmd.exe,然后右键单击以选择以管理员身份运行

5)键入cd C:\xampp\apache\bin(Xampp的安装路径)

6)输入httpd -k install

7)输入httpd -k start

8)启动Apache

答案 8 :(得分:0)

解决方案非常简单,我为x86安装了Apache,为x64安装了PHP,当我为x86重新安装PHP时,此错误消失了。

请勿在不同平台上混合使用Apache和PHP版本。

答案 9 :(得分:0)

为了与 XAMPP 一起使用,Apache 需要作为服务运行。

  • 打开 XAMPP 控制面板(确保“以管理员身份运行”)。
  • 停止 Apache。
  • 点击 Apache 的 Service 列上的红叉(使其变成绿色勾号)。
  • 启动 Apache。

enter image description here

奖励:

当您这样做时,Apache 将在您每次启动 PC 时启动。如果您想手动启动它(就像以前一样),请将 Startup Type(搜索栏 -> 服务)中的 service.mscAutomatic 更改为 Manual

enter image description here