Nginx的即时configuration重载会导致错误

我试图运行一个“nginx -c /etc/nginx/nginx.conf”但我得到:

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

然后我运行一个

  fuser -k 80/tcp ; service nginx restart. 

我再次尝试用“nginx -c /etc/nginx/nginx.conf”,但是仍然出现同样的错误“[emerg] bind()到0.0.0.0:80失败(98:Address already in use)”

为什么发生这种情况?

这不是你如何重新加载nginx。
你正在尝试再次启动nginx, -c只是指定它应该使用的configuration文件。
使用service nginx reload/etc/init.d/nginx reload重新加载它。