如何验证nginx是否正在运行?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何验证nginx是否正在运行?相关的知识,希望对你有一定的参考价值。

running an ASP.NET vNext project在我的本地机器上之后,我试图找出如何在nginx上运行它,因为它看起来像是一个recommended choice

jsinh's blog之后,我使用以下方法安装它:

sudo apt-get update
sudo apt-get install nginx -y

我试图通过使用以下方式来了解它是否有效:

ifconfig eth0 | grep inet | awk '{ print $2}'

跑完之后

sudo service nginx start
sudo service nginx stop

但是,输出始终相同:

Nginx status

如何验证nginx是否正在运行?

答案

看看你的要求,下面的命令应该是help

service nginx status

另一答案

这可能与系统有关,但这是我发现的最简单的方法。

if [ -e /var/run/nginx.pid ]; then echo "nginx is running"; fi

这是脚本编写的最佳解决方案。

另一答案

您可以使用lsof查看端口80上正在侦听的应用程序:

sudo lsof -i TCP:80
另一答案

现代(systemctl)的做法:

systemctl is-active nginx

您可以在shell脚本中使用exit值,如下所示:

systemctl -q is-active nginx && echo "It is active, do something"
另一答案

上述答案都不适合我,所以让我分享一下我的经验。我在一个docker容器中运行nginx,它有一个端口映射(hostPort:containerPort) - 80:80上面的答案给了我奇怪的控制台输出。只有好的旧'nmap'才能完美无缺,甚至可以捕获nginx版本。为我工作的命令是:

nmap -sV localhost -p 80

我们使用localhost和端口:80上的-ServiceVersion开关来执行nmap。对我来说很棒。

另一答案

也可以使用以下代码来检查nginx状态:

   sudo /etc/init.d/nginx status
另一答案

不确定您关注哪个指南,但如果您查看此页面,

https://www.digitalocean.com/community/tutorials/how-to-install-nginx-on-ubuntu-14-04-lts

它使用另一个命令

ip addr show eth0 | grep inet | awk '{ print $2; }' | sed 's//.*$//' 

并且还表明预期的结果。

以上是关于如何验证nginx是否正在运行?的主要内容,如果未能解决你的问题,请参考以下文章

如何验证 Windows 服务是不是正在运行

在片段活动中显示自定义对话框

nginx如何启用对HTTP2的支持 | nginx如何验证HTTP2是否已启用

如何验证 jemalloc 优化 Nginx 是否生效

如何测量代码片段的调用次数和经过时间

Kubernetes Nginx-Ingress oauth_proxy如何将信息/令牌传递给服务