nginx startup fail on mac osx 10.9 mavericks

╄→гoц情女王★ 提交于 2019-11-30 10:59:45

问题


I've been using nginx for a few months without issue, but after upgrading to Mac OS X 10.9 Mavericks, when trying to start nginx I get this:

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()

I tried to follow these directions, but I'm not having much luck as my outputs seem a little different.

The output of:

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

is:

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

I've tried killing the process using that PID, but it never seems to die... Any ideas on how to get nginx running again? Any help is greatly appreciated!!


回答1:


Your ps ... | egrep command is finding itself, not an instance of nginx (look at the "COMMAND" column). Since port 80 is in use, it's likely some other program (maybe the Apache that comes with the OS?) is running and grabbing it. To find out, run:

sudo lsof -i:80

If it's the system Apache ("httpd") program, you can probably shut it down with:

sudo launchctl unload -w /System/Library/LaunchDaemons/org.apache.httpd.plist

If that doesn't do it, more info will be needed to figure out what's grabbing port 80 and how it's getting started.




回答2:


Probably still nginx runnig and listening on port 80. try this command

sudo killall nginx


来源:https://stackoverflow.com/questions/19720237/nginx-startup-fail-on-mac-osx-10-9-mavericks

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!