如何验证nginx是否正在运行?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何验证nginx是否正在运行?相关的知识,希望对你有一定的参考价值。
在running an ASP.NET vNext project在我的本地机器上之后,我试图找出如何在nginx上运行它,因为它看起来像是一个recommended choice
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是否正在运行?
看看你的要求,下面的命令应该是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是否正在运行?的主要内容,如果未能解决你的问题,请参考以下文章