nginx log de erro era enorme, então eu deletei e criei um novo, agora o nginx não inicia

8

Eu apaguei o arquivo /var/log/nginx/error.log e criei um novo usando:

sudo nano error.log

Doinga ls -la mostra que o error.log e o access.log possuem as mesmas permissões.

Quando tento iniciar o nginx, recebo o erro:

alert: não foi possível abrir o arquivo de log de erros: open () "/var/log/nginx/error.log" failed permission denited.

Atualizar QUANDO tentar iniciar o nginx, também estou vendo:

emerg: /var/run/nginx.pid falhou 13: permissão negada.

    
por Blankman 31.05.2010 / 21:26

5 respostas

18

Isso não resolve o seu problema, mas no futuro, se você fizer

cat /dev/null > /file/you/want/to/wipe-out

você copiará o conteúdo do arquivo com nada e manterá todas as permissões intactas.

Não nginx-speicific, mas Além disso, certifique-se de estar executando o aplicativo como o usuário para o qual ele deve ser executado. Se você já o executou como root, todas as permissões serão de propriedade do root, portanto, outros usuários não poderão executá-lo.

    
por 31.05.2010 / 22:50
2

dê uma olhada na configuração do nginx, verifique com quem o servidor está sendo executado - supondo que o usuário será o nginx

então:

chown nginx: /var/run/nginx.pid chown -R nginx: /var/log/nginx

Deve fazer o truque.

    
por 31.05.2010 / 22:04
2

A maneira usual de rotacionar os logs com o NginX é renomear o arquivo e, em seguida, /etc/init.d/nginx reload . O servidor inicia um novo arquivo e você pode fazer o que quiser com o antigo.

Você também pode achar útil editar a configuração para não registrar tanto ....

    
por 24.07.2010 / 18:05
1

Exclua o arquivo error.log e o nginx criará por conta própria.

    
por 31.05.2010 / 21:30
0

Primeiro, tente excluir o arquivo, se isso não funcionar, verifique se o usuário nobody tem as permissões corretas: link

    
por 31.05.2010 / 21:39