How to verify if nginx is running or not?

UbuntuNginxMono

Ubuntu Problem Overview


After running an ASP.NET vNext project on my local machine I was trying to figure out how I can run it on nginx as it looks to be a recommended choice

Following jsinh's blog, I installed it using:

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

I was trying to understand whether it is working or not by using:

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

After running

sudo service nginx start
sudo service nginx stop

However, the output is always the same:

Nginx status

>How to verify if nginx is running or not?

Ubuntu Solutions


Solution 1 - Ubuntu

Looking at the requirement you have, the below command shall help:

service nginx status

Solution 2 - Ubuntu

This is probably system-dependent, but this is the simplest way I've found.

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

That's the best solution for scripting.

Solution 3 - Ubuntu

You could use lsof to see what application is listening on port 80:

sudo lsof -i TCP:80

Solution 4 - Ubuntu

If you are on mac machine and had installed nginx using

brew install nginx

then

brew services list

is the command for you. This will return a list of services installed via brew and their corresponding status.

enter image description here

Solution 5 - Ubuntu

The modern (systemctl) way of doing it:

systemctl is-active nginx

You can use the exit value in your shell scripts as follows:

systemctl -q is-active nginx && echo "It is active, do something"

Solution 6 - Ubuntu

For Mac users

I found out one more way: You can check if /usr/local/var/run/nginx.pid exists. If it is - nginx is running. Useful way for scripting.

Example:

if [ -f /usr/local/var/run/nginx.pid ]; then
   echo "Nginx is running"

fi

Solution 7 - Ubuntu

service nginx status will work on a non-systemd based version.

On systemd based versions such as Ubuntu Linux 16.04 LTS and above, make use of the command below;

systemctl status nginx

Solution 8 - Ubuntu

None of the above answers worked for me so let me share my experience. I am running nginx in a docker container that has a port mapping (hostPort:containerPort) - 80:80 The above answers are giving me strange console output. Only the good old 'nmap' is working flawlessly even catching the nginx version. The command working for me is:

 nmap -sV localhost -p 80

We are doing nmap using the -ServiceVersion switch on the localhost and port: 80. It works great for me.

Solution 9 - Ubuntu

The other way to see it in windows command line :

tasklist /fi "imagename eq nginx.exe"

> INFO: No tasks are running which match the specified criteria.

if there is a running nginx you will see them

Solution 10 - Ubuntu

Can also use the following code to check the nginx status:

   sudo /etc/init.d/nginx status

Solution 11 - Ubuntu

Not sure which guide you are following, but if you check out this page,

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

It uses another command

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

and also indicates what result is expected.

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionxameeramirView Question on Stackoverflow
Solution 1 - Ubuntuuser5790799View Answer on Stackoverflow
Solution 2 - UbuntualeclarsonView Answer on Stackoverflow
Solution 3 - UbuntuCole TierneyView Answer on Stackoverflow
Solution 4 - UbuntuGurmeet SinghView Answer on Stackoverflow
Solution 5 - UbuntuSelcukView Answer on Stackoverflow
Solution 6 - UbuntuDkyriiView Answer on Stackoverflow
Solution 7 - UbuntunyedidikekeView Answer on Stackoverflow
Solution 8 - UbuntusaferJoView Answer on Stackoverflow
Solution 9 - UbuntuHamit YILDIRIMView Answer on Stackoverflow
Solution 10 - UbuntuBiranchiView Answer on Stackoverflow
Solution 11 - UbuntuLex LiView Answer on Stackoverflow