Como parar o nginx no Mac OS X

37

Eu instalei e configurei o servidor nginx no meu Mac a partir do MacPorts

  1. sudo port install nginx
  2. Seguiu a recomendação do console de instalação da porta e criou o item de inicialização launchd para nginx, depois iniciou o servidor.
  3. Renomeado nginx.conf.examplepara nginx.confe renomeado mime.types.examplepara mime.types.

Funciona bem, mas não consegui parar.

Eu tentei sudo nginx -s stop, mas isso não interrompe o servidor, ainda vejo "Bem-vindo ao nginx!" página no meu navegador http://localhost/; Também ainda vejo processos mestre e de trabalho do nginx ps -e | grep nginx.

Qual é a melhor maneira de iniciar / parar o nginx no Mac?

BTW, eu adicionei "daemon off;" no nginx.conf - conforme recomendado por vários recursos.

Alex Kaushovik
fonte

Respostas:

66
# nginx -h
...
-s signal     : send signal to a master process: stop, quit, reopen, reload
...
SaveTheRbtz
fonte
Quando instalei o nginx com o MacPorts, o comando acima não funcionou - não estava me dando um erro, mas o servidor continuava em execução. Mas quando limpei o nginx e o reinstalei como parte da instalação do módulo nginx de passageiros, ele funciona agora: eu posso fazer o "nginx -s stop" e realmente interrompe o servidor. Obrigado!
Alex Kaushovik
2
usando nginx -s stopfuncionou para mim, mas então eu não era capaz de reiniciar o meu servidor usando nginx -s reopen, nginx -s reload, nginx -s startou nginx -s restart? Como reiniciar? Não importa, apenas a execução do programa o $ sudo /usr/local/sbin/nginxreinicia.
tim Peterson
@timpeterson restartou reloadtrabalha em ... servidor ativo , se você estiver parando, basta iniciá-lo com o nginxcomando 'no-signal' comum .
biesior
16

Este comando para também para o nginx.

sudo nginx -s stop 
Ampulheta
fonte
8

A maneira correta de fazer isso para o Nginx instalado via MacPorts:

  • Começar: sudo port load nginx
  • Pare: sudo port unload nginx

O OS X usa o launchd, portanto, o processo de iniciar / parar daemons é um pouco diferente.

R. van Twisk
fonte
4

Veja o PID do processo mestre e faça

kill -QUIT <master_pid>
Alexander Azarov
fonte
1
Como pesquisar thePID?
user1767754
ps aux | grep nginx
precisa
você pode precisar de fazersudo kill -9 <pid>
lacostenycoder
3

Você pode tentar o seguinte:

ps -lef|grep -i nginx:|awk '{ print $2}'|xargs kill -9
thinkhy
fonte