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!!
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.
Probablement toujours nginx en cours d'exécution et en écoute sur le port 80. essayez cette commande
Sudo killall nginx