web-dev-qa-db-fra.com

échec du démarrage de nginx sur mac osx 10.9 mavericks

J'utilise nginx depuis quelques mois sans problème, mais après la mise à niveau vers Mac OS X 10.9 Mavericks, lorsque j'essaie de démarrer nginx, j'obtiens ceci:

nginx: [emerg] bind() to 0.0.0.0:80 failed (48: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:80 failed (48: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:80 failed (48: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:80 failed (48: Address already in use)
nginx: [emerg] bind() to 0.0.0.0:80 failed (48: Address already in use)
nginx: [emerg] still could not bind()

J'ai essayé de suivre ces directions , mais je n'ai pas beaucoup de chance car mes sorties semblent un peu différentes.

La sortie de:

ps ax -o pid,ppid,%cpu,vsz,wchan,command|egrep '(nginx|PID)'

est:

  PID  PPID  %CPU      VSZ WCHAN  COMMAND
 15015 12765  0.0  2432784 -      egrep (nginx|PID)

J'ai essayé de tuer le processus en utilisant ce PID, mais il ne semble jamais mourir ... Des idées sur la façon de faire fonctionner nginx à nouveau? Toute aide est grandement appréciée!!

27
gjunkie

Votre ps ... | egrep la commande se trouve, pas une instance de nginx (regardez la colonne "COMMAND"). Étant donné que le port 80 est utilisé, il est probable qu'un autre programme (peut-être l'Apache fourni avec le système d'exploitation?) Est en cours d'exécution et le saisit. Pour le savoir, exécutez:

Sudo lsof -i:80

S'il s'agit du programme système Apache ("httpd"), vous pouvez probablement l'arrêter avec:

Sudo launchctl unload -w /System/Library/LaunchDaemons/org.Apache.httpd.plist

Si cela ne le fait pas, plus d'informations seront nécessaires pour déterminer ce qui capture le port 80 et comment il démarre.

55
Gordon Davisson

Probablement toujours nginx en cours d'exécution et en écoute sur le port 80. essayez cette commande

Sudo killall nginx
2
pashaplus