O Apache não retornará - o httpd está morto, mas o subsys está bloqueado

1

Espero que alguém possa me ajudar bastante urgentemente.
Eu tenho tentado fazer com que o servidor do Centos volte a funcionar.

Eu fiz uma atualização no yum ontem que foi como planejado, mas esta manhã eu descobri que o httpd está morto (eu estou supondo em logrotate).

Eu posso emitir um "serviço httpd start" e ele parece começar OK, mas o status revela "httpd dead mas subsys locked". Posso remover o bloqueio de subsys e começar de novo, mas depois recebo:
"(98) Endereço já em uso: make_sock: não pôde ligar ao endereço 0.0.0.0:80
sem soquetes de escuta disponíveis, desligando
Não é possível abrir os registros "

Em seguida, executar o netstat -plant mostra o httpd sendo executado em

tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 8191/httpd
tcp 0 0 0.0.0.0:443 0.0.0.0:* LISTEN 8191/httpd

Eu posso remover o Listen 80 do meu httpd.conf e isso remove o primeiro erro, mas ele exibe: "(98) Endereço já em uso: make_sock: não foi possível vincular ao endereço 0.0.0.0:443
sem soquetes de escuta disponíveis, desligando
Não é possível abrir os registros "

Não há entrada para 443 no meu conf?

Tendo também rodado tail -f / var / log / messages, recebo uma entrada preocupante:
www kernel: httpd [8189]: segfault em 0 ip b7367c48 sp bf89f4fc erro 4 em libc-2.5.so [b72f8000 + 152000]

Alguma ideia, por favor?

Chris

    
por Chris Southam 08.08.2010 / 10:06

4 respostas

1

Você provavelmente ainda tem o httpd em execução na porta 80 e 443. Tente pkill httpd; ou pkill -9 httpd
Em seguida, execute o netstat -plant novamente e verifique se o httpd na porta 80 e 443 desapareceu. Agora inicie o apache novamente.

Você diz que não tem 443 na sua configuração, o que "grep -ril 443" / etc / apache2 diz?

    
por 08.08.2010 / 10:47
0

você também pode verificar se há algum processo ligado a 443 com lsof -i tcp: 443; então você pode matar o processo ou encontrar o serviço ofensivo.

    
por 08.08.2010 / 15:03
0

Algo semelhante aconteceu comigo. Acontece que o httpd realmente estava correndo o tempo todo! Aparentemente, a mensagem "httpd dead mas subsys locked" pode aparecer erroneamente se você tiver permissões insuficientes quando verificar o status do serviço. Mude para o root e veja se você recebe uma mensagem diferente, ou faça um ping no seu servidor, você pode simplesmente achar que está funcionando!

    
por 16.01.2013 / 21:26
0

Provavelmente existe outra instância do httpd em execução, faça um

'lsof -i :80' 

e deve mostrar se está funcionando ou não. Se estiver em execução, faça um

kill -9 <pid>

Além disso, você pode querer verificar o arquivo /etc/httpd/httpd.conf para erros, pois isso pode levar a um início defeituoso do serviço

    
por 02.04.2015 / 19:20