安装了 2 个版本的 nginx

安装了 2 个版本的 nginx

我在我的 Ubuntu 10.10 开发机器上安装了 nginx 0.8.54,并且 php fastcgi 全部设置好并正常运行。

我想开始做一些 Rails 开发,所以我尝试将 Passenger 安装到我现有的 nginx 安装中。现在一切似乎都乱了。我的 /sites-available/default 配置似乎不起作用,因为我无法浏览我之前设置的开发网站。

当我nginx -v在终端运行时,它显示 0.8.54,但当我浏览时说http://localhost/xyz它返回 404,并且 404 错误页面指示 0.8.53。

此外,如果我运行,service nginx restart我会得到以下信息:

重新启动 nginx:[emerg]:bind() 到 0.0.0.0:80 失败(98:地址已在使用中)[emerg]:bind() 到 0.0.0.0:80 失败(98:地址已在使用中)[emerg]:bind() 到 0.0.0.0:80 失败(98:地址已在使用中)[emerg]:bind() 到 0.0.0.0:80 失败(98:地址已在使用中)[emerg]:bind() 到 0.0.0.0:80 失败(98:地址已在使用中)[emerg]:仍然无法 bind() nginx。

好像我有两个版本的 nginx 在运行。这可能吗?我该如何解决这个问题,以便有一个版本运行 php fastcgi 和 Rails/Passenger?

答案1

也许你安装了两个版本的 nginx:

# whereis nginx
nginx: /usr/sbin/nginx /etc/nginx /usr/local/sbin/nginx /usr/share/man/man1/nginx.1.gz
# nginx -V
nginx version: nginx/0.8.54
# /usr/sbin/nginx -V
nginx version: nginx/0.7.67

将 nginx 的路径名扩展为“/usr/local/sbin/nginx”,因为 PATH /usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games(/usr/local/sbin 在 /usr/sbin 之前)。

还可以尝试使用 find:

# find / -name nginx -executable -type f
/usr/sbin/nginx
/usr/local/sbin/nginx
/etc/init.d/nginx

相关内容