配置 PHP 过程中看到 Nginx 的日志文件大小达到 800 多 Mb,里面的日志内容多是:nginx: [emerg] bind() to 0.0.0.0:80 failed (48: Address already in use)等端口占用信息,不免好奇。

Mac 默认的 Apache 已经 stop,再无其他应用、程序占用 80 端口。事实上,netstat分析也显示没有其他进程占用,但结果就摆在眼前,仍在不停输出。通过搜索发现,可能是 IPv6 所致。于是带上--with-ipv6选项重新编译,并监听 IPv6 地址,设为ipv6only=on。重新 reload 后,转为报错:nginx: [emerg] bind() to [::]:80 failed (48: Address already in use)。看来,网上的解决方案无济于事。┓( ´∀` )┏

逐渐尝试升级  Nginx、换端口,问题依旧,只是提示信息改为 8080、8081 等。看来,问题并不出在 IPv6 等配置上。

升级过程中,偶然的发现,sudo launchctl unload org.nginx.plist后,似乎报错停止了。于是,恢复配置,reload 后,进行了 unload 测试。果不其然,事实证实如此。问题完美解决。[]~( ̄▽ ̄)~*