Por algum motivo que ainda não localizamos, em nosso ambiente, o nginx cria dois arquivos pid: /run/nginx.pid e /var/run/nginx.pid . Isso parece acontecer independentemente da versão nginx, então parece que não é um bug nginx em si.
A execução de nginx -s quit não mata e exclui os pids como deveria, mas service nginx stop sim. Então, para fazer uma reinicialização elegante em uma versão nginx atualizada, temos que executar ambas:
-
sudo nginx -s quit -
sudo service nginx stop(depois de um minuto ou mais para dar tempo para a graciosa saída) -
sudo service nginx start
Os sinais quit subseqüentes funcionarão bem, contanto que o nginx seja interrompido por meio do comando service para garantir que os pids não fiquem disponíveis.