Я пытаюсь установить и запустить apache 2.4 в моей системе Windows 7 Я пошел в каталог bin apache 2.4 и выполнил следующее: Примечание. Я открыл окно cmd как администратор. C:\Apache24\bin > httpd.exe -k install
Его вывод был следующим:
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 в качестве службы, но его не удалось запустить. Похоже, что используется порт localhost 80. Это то, что "[::]: 80" означает?
Затем я остановил обе службы apache 2.0, которые у меня остались, и службу mysql, надеясь, что остановка одного из них может освободить локальный порт 80.
Я также запускаю 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>
Ошибка при попытке запуска говорит о том, что из-за отсутствия доступа make-sock не может привязываться к сокетам, которые для меня выглядели как porthost 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
Кто-нибудь может сказать, что я делаю неправильно?