faz o apache rodar mesmo que seja “incapaz de abrir logs”

3

É possível tornar o apache não dependente da existência de log?

Se houver um arquivo de log que não possa ser aberto, o apache será encerrado após a reinicialização ou até mesmo recarregado. Um comportamento bastante desagradável, porque é preciso ter muito cuidado ao manipular vhosts no servidor de produção. Precisa ser assim? O interessante é que, se houver apenas um erro de sintaxe em um vhost, o recarregamento do apache não o encerra.

Exemplo:

$ sudo /etc/init.d/httpd reload

De registros:

[Thu Jan 10 19:25:02 2013] [notice] SIGHUP received.  Attempting to restart
(2)No such file or directory: httpd: could not open error log file /var/www/patron/logs/error_log.
Unable to open logs

E o apache não está mais em execução: (.

    
por clime 10.01.2013 / 19:36

1 resposta

4

Você está latindo na árvore errada aqui. Você instruiu o apache a manter registros, não é capaz de fazer isso, portanto, expira como deveria.

O problema real aqui é falta de controle / teste. Antes de tocar em suas configurações de produção, teste essas alterações em um ambiente de preparação. Fazer isso trará esse tipo de problema, além de inúmeros outros.

Se você precisar modificar suas configurações diretamente no servidor de produção, faça um teste de configuração antes de recarregar a configuração. O uso de apachectl configtest e apachectl graceful eliminará a maioria (mas não todos) acidentes deste tipo.

    
por 10.01.2013 / 19:46