尝试启动 nginx,但端口正在使用中。通过 Passenger 安装

尝试启动 nginx,但端口正在使用中。通过 Passenger 安装

我正在使用 nginx+passenger 设置带有 Rails 3.1 应用程序的 VPS,并使用 capistrano 进行引导。起初,我使用二进制文件安装了 nginx,忘记了 Passenger 也会安装它。当 Passenger 询问我时,我创建了一个目录 ~/opt/nginx 供它安装到其中。现在,当我运行以下命令时:

sudo /etc/init.d/nginx stop
lsof -i:80

服务器似乎停止了,端口 80 没有任何报告。但是,我尝试运行

sudo ~/opt/nginx/sbin/nginx

上面写着:

nginx:[emerg] bind() 至 0.0.0.0:80 失败(98:地址已在使用中)

有什么想法吗?请注意,我以这种方式安装 nginx 是因为我使用的是用户 rvm 安装,因此使用sudo passenger-install-nginx-module会指定错误的 ruby​​ 版本。

答案1

您是否使用 sudo 运行了 lsof?

这会返回任何监听端口 80 的内容吗?

netstat -an | grep LISTEN*

当您连接到端口 80 时您会收到任何消息吗?

相关内容