ti-enxame.com

Consegui instalar, mas não consegui iniciar o Apache 2.4 no sistema windows 7

Eu estou tentando instalar e executar o Apache 2.4 no meu sistema windows 7 Eu fui para o diretório bin Apache 2.4 e correu o seguinte: Nota: Eu abri a janela do cmd como administrador. .] C:\Apache24\bin> httpd.exe -k instalar

Sua saída foi a seguinte: 

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

Então, ele instalou o Apache 2.4 como um serviço, mas não pôde ser iniciado. Parece que a porta 80 do localhost está sendo usada. É isso que "[::]: 80" significa?

Eu então parei tanto o serviço Apache 2.0 que eu deixei rodando quanto o serviço mysql, esperando que um deles pudesse liberar a porta 80 local do host.

Eu também corro netstat -o para ver se a porta 80 está sendo usada. Não era.

Mas, então, descobri que um processo estava usando o soquete acima, é um processo que está escutando no soquete acima

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

Eu então corri lista de tarefas e descobri que o sistema está usando pid 4. 4 está sob a coluna pid

System                           4 Services                   0        544 K

Finalmente, da tentativa fracassada de iniciar o serviço Recebi um erro que foi registrado nos eventos do sistema 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>

O erro da tentativa de iniciar diz que, por causa da falta de acesso, make-sock não poderia ligar-se a soquetes que para mim pareciam porta de host local 80. Por exemplo,

  (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

Alguém pode dizer o que estou fazendo errado? 

23
Joe

Desculpe pela pergunta elaborada. Para resolver o meu problema, eu apenas disse ao Apache 2.4 para ouvir uma porta diferente no httpd.conf. Como o System estava usando o pid 4, que estava escutando na porta 80, eu não queria mais explorar isso.

Eu coloquei o seguinte em httpd.conf. Ouça 127.0.0.1:122

19
Joe

O culpado mais provável é o Microsoft Internet Information Server. Você pode parar o serviço a partir da linha de comando no Windows 7/Vista:

parada líquida foi/y

ou XP:

net stop iisadmin/y

leia isto http://www.sitepoint.com/unblock-port-80-on-windows-run-Apache/

15
Dinum Dissanayaka

Eu tenho o mesmo problema também, depois de atualizar o win7 para win10. Então eu verifiquei o services.msc e encontrei o " Serviço de Publicação na World Wide Web " estava rodando automaticamente por padrão. Eu o desativei e executei o serviço Apache novamente.

6
projo
 Porta 80 talvez usada pelo Microsoft HTTPAPI 
 
 Tente parar o seguinte serviço: 
 Serviço Agente de Implantação da Web 
 Serviço de Relatório do SQL Server 
 Escritor VSS do SQL Server 
5
Gary Liu

Eu resolvi esse problema, finalmente, foi por causa de alguns sistemas como skype e processos do sistema tomar essa porta 80, você pode fazer a verificação usando netstat -ao para a porta 80

Por favor, encontre os seguintes passos

  1. Depois de instalar o seu Apache HTTP, vá para a pasta bin usando cmd 

  2. Instale-o como um serviço usando httpd.exe -k instalar mesmo quando você ver o erro não importa 

  3. Agora, certifique-se de que o serviço esteja instalado (mesmo se não iniciado) de acordo com o seu sistema operacional 

  4. Reinicie o sistema, então você vai encontrar o serviço Apache será o primeiro a ter a porta 80, 

Parabéns a questão está resolvida.

2
emad omara

Então, é por isso que eu faço um post de dois (ou mais).

Eu estava tendo o mesmo problema ao iniciar o serviço (os logs não podem ser abertos).

Eu pensei que era porque eu estava tentando ter htdocs dentro de um contêiner encriptado VeraCrypt, absurdo desde que eu tenha montado tal contento e eu uso um juntion para não afetar os caminhos.

O que eu li a causa poderia ser baixa ram: depois de alguns testes eu chego à próxima conclusão.

O Windows não está enviando páginas para ram virtual para liberar ram suficiente se for um serviço, para aplicações que ele está fazendo, eu tenho mais de 200GiB de arquivo de paginação pronto para ser usado como memória RAM virtual em uma janela de 4GiB 64 Bit 10.

Minha solução:

  1. Execute um utilitário gratuito que libere ram (512MiB no meu teste)
  2. Imediatamente após iniciar o serviço, ele começa sem erros

Causa real:

  • Eu estava usando uma máquina virtual que usa 1/2 ram físico livre (1.5GiB)

Espero que isso ajude os outros.

1
Anonymous

se você está usando o sistema operacional Windows e acredita que o Skype não é o suspeito, então você pode querer verificar o gerenciador de tarefas e verificar o "Mostrar processos de todos os usuários" e certifique-se de que não há entrada para httpd.exe. Caso contrário, termine seu processo. Isso resolve o meu problema.

1
Aldee

Eu também estava enfrentando o mesmo problema, então eu tentei reiniciar o meu sistema após cada mudança e funcionou para mim - 1) Desinstalar Apache2.4 em cmd Prompt (executar administrador) com o comando: httpd -k uninstall 2) Reinicie o sistema. 3) abra o cmd Prompt (execute o administrador) com o comando: httpd -k install. 4) Então httpd -k install.

Espero que você ache útil.

0
Sabbha Mondal