Comment arrêter nginx sur Mac OS X

37

J'ai installé et configuré le serveur nginx sur mon Mac à partir de MacPorts

  1. sudo port install nginx
  2. Suivez les recommandations de la console d'installation du port et créez l'élément de démarrage launchd pour nginx, puis démarrez le serveur.
  3. Renommé nginx.conf.exampleà nginx.confet renommé mime.types.examplepour mime.types.

Cela fonctionne bien, mais je ne pouvais pas l'arrêter.

J'ai essayé sudo nginx -s stop, mais cela n'arrête pas le serveur, je peux toujours voir "Bienvenue sur nginx!" page dans mon navigateur sur http://localhost/; De plus, je vois toujours les processus maître et ouvrier de nginx avec ps -e | grep nginx.

Quelle est la meilleure façon de démarrer / arrêter nginx sur Mac?

BTW, j'ai ajouté "daemon off;" dans nginx.conf - comme recommandé par diverses ressources.

Alex Kaushovik
la source

Réponses:

66
# nginx -h
...
-s signal     : send signal to a master process: stop, quit, reopen, reload
...
SaveTheRbtz
la source
Lorsque j'ai installé nginx avec MacPorts, la commande ci-dessus ne fonctionnait pas. Je ne me donnais pas d'erreur, mais le serveur continuait à fonctionner. Mais quand j'ai nettoyé nginx clean et que je l'ai réinstallé dans le cadre de l'installation du module nginx pour le passager, tout fonctionne maintenant: je peux faire "nginx -s stop" et cela arrête vraiment le serveur. Merci!
Alex Kaushovik
2
en utilisant nginx -s stoptravaillé pour moi , mais je n'ai pas pu redémarrer mon serveur en utilisant soit nginx -s reopen, nginx -s reload, nginx -s startou nginx -s restart? Comment redémarrer? Ce n'est pas grave, le simple fait d'exécuter le programme le $ sudo /usr/local/sbin/nginxredémarre.
Tim Peterson
@timpeterson restartou reloadfonctionne sur ... un serveur en fonctionnement, si vous l'arrêtez, il vous suffit de le démarrer avec la commande commune "sans signal" nginx.
biesior
16

Cette commande arrête également nginx.

sudo nginx -s stop 
Sablier
la source
8

La bonne façon de faire cela pour Nginx installé via MacPorts:

  • Début: sudo port load nginx
  • Arrêtez: sudo port unload nginx

OS X utilise launchd, le processus de démarrage / arrêt des démons est légèrement différent.

R. van Twisk
la source
4

Regardez le PID du processus maître et faites

kill -QUIT <master_pid>
Alexander Azarov
la source
1
Comment rechercher lePID?
user1767754
ps aux | grep nginx
lacostenycoder
vous devrez peut-être fairesudo kill -9 <pid>
lacostenycoder le
3

Vous pouvez essayer ce qui suit:

ps -lef|grep -i nginx:|awk '{ print $2}'|xargs kill -9
penseur
la source