安装成功,但不能在我的Windows启动Apache 2.4 7系统

问题描述 投票:24回答:11

我试图安装在我的Windows下的Apache 2.4运行7系统我去到Apache 2.4 bin目录,运行以下:注:我打开cmd窗口为管理员。 C:\ Apache24 \ BIN> httpd.exe -k安装

它的输出结果如下:

Installing the Apache2.4 service
The Apache2.4 service is successfully installed.
Testing httpd.conf....
Errors reported here must be corrected before the service can be started.
(OS 10013)An attempt was made to access a socket in a way forbidden by its acces
s permissions.  : AH00072: make_sock: could not bind to address [::]:80
(OS 10013)An attempt was made to access a socket in a way forbidden by its acces
s permissions.  : AH00072: make_sock: could not bind to address 0.0.0.0:80
AH00451: no listening sockets available, shutting down
AH00015: Unable to open log

因此,安装了Apache 2.4的服务,但它无法启动。这似乎是正在使用本地主机端口80。这是什么“[:]:80”是指?

然后我停止这两个我已经离开运行和mysql服务,希望能阻止他们的一个可能腾出本地主机端口80的基于Apache 2.0的服务。

我也运行netstat -o看是否正在使用端口80。不是。

但是,我再发现的过程中使用上述插座这是上面的插座上听的过程

 TCP    [::]:80                User-PC:0              LISTENING       4

然后我跑任务列表,发现该系统是采用pid 4. 4是PID列下

System                           4 Services                   0        544 K

最后,从失败的尝试启动服务我被记录在Windows系统中的事件错误。

Log Name:      System
Source:        Service Control Manager
Date:          2/21/2013 1:58:03 PM
Event ID:      7024
Task Category: None
Level:         Error
Keywords:      Classic
User:          N/A
Computer:      User-PC
Description:
The Apache2.4 service terminated with service-specific error Incorrect function.

Event Xml:
<Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
  <System>
    <Provider Name="Service Control Manager" Guid="{555908d1-a6d7-4695-8e1e-26931d2012f4}" EventSourceName="Service Control Manager" />
    <EventID Qualifiers="49152">7024</EventID>
    <Version>0</Version>
    <Level>2</Level>
    <Task>0</Task>
    <Opcode>0</Opcode>
    <Keywords>0x8080000000000000</Keywords>
    <TimeCreated SystemTime="2013-02-21T18:58:03.723988900Z" />
    <EventRecordID>87756</EventRecordID>
    <Correlation />
    <Execution ProcessID="560" ThreadID="7596" />
    <Channel>System</Channel>
    <Computer>User-PC</Computer>
    <Security />
  </System>
  <EventData>
    <Data Name="param1">Apache2.4</Data>
    <Data Name="param2">%%1</Data>
  </EventData>
</Event>

从尝试启动错误说,由于缺乏准入,使-袜子无法绑定到插座这对我看起来像本地主机端口80。例如,

  (OS 10013)An attempt was made to access a socket in a way forbidden by its acces
    s permissions.  : AH00072: make_sock: could not bind to address [::]:80

谁能告诉我在做什么错?

apache service windows-7 install
11个回答
19
投票

对不起,我痛打一顿问题。为了解决我的问题,我只是告诉阿帕奇2.4听在httpd.conf不同的端口。由于系统采用pid 4这是侦听端口80,我不想任何进一步探讨这一点。

我把下列httpd.conf中。听127.0.0.1:122


0
投票

在我的情况,这是由于Apache正在听一个IP地址。此前我已经将它设置为192.168.10.6,最近Apache服务没有运行。我注意到的是,由于我的笔记本电脑的WiFi最近改变和新的IP是不同的。 wifi的IP固定在以前的笔记本电脑IP后,Apache服务是没有任何错误再次运行。

此外,如果你不想改变WiFi IP然后删除/评论,在httpd.conf文件的硬编码IP解决冲突。


-6
投票

这可能是因为在物理内存不足。

检查的文档最低系统要求和尝试,如果可能,关闭不必要的程序。


16
投票

最有可能的罪魁祸首是Microsoft Internet信息服务器。您可以停止从Windows 7 / Vista中的命令行的服务:

净停止为/ Y

或XP:

净停止iisadmin / Y

读这http://www.sitepoint.com/unblock-port-80-on-windows-run-apache/


7
投票

我也有同样的问题太多,在升级到WIN7后win10。然后我检查services.msc,然后找到“万维网发布服务”是默认自动运行。于是我禁用它,并重新运行Apache服务。


5
投票
Port 80 maybe used by Microsoft HTTPAPI

Try to stop the following service:
  Web Deployment Agent Service
  SQL Server Reporting Service
  SQL Server VSS Writer

2
投票

我终于解决了这个问题,这是因为像Skype和系统进程的一些系统采取的是80端口,就可以用netstat -ao 80端口做检查

请找到下面的步骤

  1. 安装Apache的HTTP后转到bin文件夹使用CMD
  2. 使用httpd.exe -k当你看到错误没关系安装甚至安装它作为服务
  3. 现在,根据您的操作系统,确保已安装服务(即使未开始)
  4. 重新启动系统,那么你会发现Apache服务将采取80端口的第一个,

恭喜这个问题就解决了。


1
投票

如果您使用的是Windows操作系统,并认为Skype是不是犯罪嫌疑人,那么你可能要检查的任务管理器和“显示所有用户进程”检查并确保有对httpd.exe没有条目。否则,结束其进程。这解决了我的问题。


1
投票

所以,这就是为什么我做了两个(或更多)后。

启动服务(日志无法打开),当我有同样的问题。

我想这是因为我想有一个VeraCrypt加密容器里面的htdocs,荒谬的,因为我脑水肿等包含安装和我使用的是结不影响路径。

在我读的原因可能是低内存:一些测试后,我得到了一个结论。

Windows未发送的页面虚拟内存来释放足够的内存,如果它是一种服务,对于应用而言,这样做,我比页面文件准备在4GiB 64位Windows 10被用作虚拟RAM的200GiB更多。

我的解决方案:

  1. 运行免费的实用程序可用的RAM(为512MiB在我的测试)
  2. 立即启动服务后,它不出差错开始

真正的原因:

  • 我用使用1/2物理可用RAM的虚拟机(1.5GiB)

希望这会帮助别人。


0
投票

我也面临着同样的问题,那我就每次更改后重新启动我的系统,它为我工作 - 1)卸载Apache2.4在命令提示符(运行管理员)使用以下命令:的httpd -k卸载2)重新启动系统。 3)打开命令提示符(运行管理员)与所述命令:的httpd -k安装。 4)接着的httpd -k安装。

希望你能找到有用的。


0
投票

你能解决吗

sudo nano /etc/apache2/ports.conf

和改听8080

© www.soinside.com 2019 - 2024. All rights reserved.