查找nginx版本?

82

我已经按照以下步骤在Debian 7上安装了nginx

sudo apt-get update
sudo apt-get upgrade
sudo apt-get install nginx
sudo service nginx start

通过从浏览器访问主机IP地址,我确认了这启动了nginx。如何查找nginx的版本?

nginx -v 失败并显示 "command not found" 错误。

我已验证 nginx 存在于 /usr/sbin 目录中,并且该目录已添加到 $PATH 变量中。


4
我刚刚按照你上面描述的方式在我的一个系统上尝试了一下(作为普通系统用户和root用户),结果是:nginx -v => nginx version: nginx/1.8.0。我猜测,可能是你的PATH变量出了问题或者配置错误? - MWiesner
2
所以/usr/sbin/nginx -v也不起作用吗? - Alexey Ten
尝试了 /usr/sbin/nginx -v,得到相同的响应。 - user_mda
7
执行 whereis nginx 命令查找nginx所在的路径,然后使用该路径。 - Black
"sudo apt-get install nginx" 将安装nginx。那么为什么需要 "sudo service nginx start"? - Satish Patro
7个回答

82

看起来你的nginx安装不正确。注意安装命令的输出:

sudo apt-get install nginx

您可以使用以下命令检查nginx版本:

$ nginx -v
nginx version: nginx/0.8.54

$ nginx -V
nginx version: nginx/0.8.54
TLS SNI support enabled
configure arguments: --conf-path=/etc/nginx/nginx.conf --error-log-path=/var/log/nginx/error.log --http-client-body-temp-path=/var/lib/nginx/body --http-fastcgi-temp-path=/var/lib/nginx/fastcgi --http-log-path=/var/log/nginx/access.log --http-proxy-temp-path=/var/lib/nginx/proxy --http-scgi-temp-path=/var/lib/nginx/scgi --http-uwsgi-temp-path=/var/lib/nginx/uwsgi --lock-path=/var/lock/nginx.lock --pid-path=/var/run/nginx.pid --with-debug --with-http_addition_module --with-http_dav_module --with-http_geoip_module --with-http_gzip_static_module --with-http_image_filter_module --with-http_realip_module --with-http_stub_status_module --with-http_ssl_module --with-http_sub_module --with-http_xslt_module --with-ipv6 --with-sha1=/usr/include/openssl --with-md5=/usr/include/openssl --with-mail --with-mail_ssl_module --add-module=/build/buildd/nginx-0.8.54/debian/modules/nginx-upstream-fair

了解更多信息,请查看http://nginxlibrary.com/check-nginx-version/

您可以使用-v 参数仅显示Nginx版本,或使用-V参数显示版本以及编译器版本和配置参数。


34

在我的情况下,我尝试添加 sudo

sudo nginx -v

这里输入图片描述


14
如果你打算让黑出来的图片文字依然可读,那么遮盖这些文字就没有意义了。 - mbomb007

17
如果您不知道其位置,请先找到nginx。
ps -ef | grep nginx

然后你会看到类似这样的东西:

root      4801     1  0 May23 ?        00:00:00 nginx: master process /opt/nginx/sbin/nginx -c /opt/nginx/conf/nginx.conf
root     12427 11747  0 03:53 pts/1    00:00:00 grep --color=auto nginx
nginx    24012  4801  0 02:30 ?        00:00:00 nginx: worker process                              
nginx    24013  4801  0 02:30 ?        00:00:00 nginx: worker process

现在您已经知道了nginx的位置。您可以使用-v或-V选项,例如:

/opt/nginx/sbin/nginx -v

5

我猜测nginx不在你的路径中。
在bash中,尝试以下命令:
echo $PATH

sudo which nginx
看一下包含nginx的文件夹是否也在你的$PATH变量中。
如果不是,要么将该文件夹添加到你的路径环境变量中,要么创建一个别名(并将其放入你的.bashrc文件),或者你可以创建一个链接。
或者如果只想查看版本,执行以下命令:sudo nginx -v


5

请确保您有权限运行以下命令。

如果您从终端检查nginx的man页面

man nginx

您可以找到以下内容:

-V             Print the nginx version, compiler version, and configure script parameters.

-v             Print the nginx version.

然后在终端中输入。
nginx -v
nginx version: nginx/1.14.0

nginx -V
nginx version: nginx/1.14.0
built with OpenSSL 1.1.0g  2 Nov 2017
TLS SNI support enabled

如果您的系统中没有安装nginx,那么man nginx命令将找不到手册页,请确保您已经安装了nginx。
您还可以使用以下命令查找版本:
使用其中一条命令查找nginx的路径。
ps aux | grep nginx
ps -ef | grep nginx

root       883  0.0  0.3  44524  3388 ?        Ss   Dec07   0:00 nginx: master process /usr/sbin/nginx -g daemon on; master_process on

然后在终端中运行:

/usr/sbin/nginx -v

nginx version: nginx/1.14.0

2

尝试运行命令whereis nginx。它会给出nginx安装的正确路径,在我的情况下,nginx安装在/usr/local/sbin,因此我需要检查这个路径是否存在于命令echo $PATH的输出中。如果你在这个命令的输出中找不到这个路径,那么你可以添加它。

假设我的echo $PATH命令的输出如下:

~$ echo $PATH
/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin:/usr/local/nginx/sbin

然后我可以通过以下命令将路径/usr/local/sbin添加到$PATH中:

~$ echo 'export PATH="/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin:/usr/local/nginx/sbin"' >> $HOME/.bashrc

请检查您的nginx安装路径,可能与我的不同,但添加它们的步骤是相同的。

1

搜索您的系统中是否安装了Nginx或任何其他软件包

which nginx

或者

sudo which nginx

如果之前安装了nginx,结果会像这样: /sbin/nginx /bin/nginx
如果您使用的是RHEL,则会显示所有已安装的模块。
yum search nginx

或者在RHEL中检查Nginx版本

rpm -q nginx

结果看起来像这样。

nginx-1.14.1-9.module+el8.0.0+4108+af250afe.x86_64

或者

sudo nginx -v

结果看起来像这样:

nginx 版本:nginx/1.14.1

不要使用 "nginx --version" 命令,它会显示意外的错误。我是一个 RHEL 用户。


如果我的评论对您有帮助,请点赞。 - Ronny Dsouza

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接