Reputation: 31285
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:
How to verify if nginx is running or not?
Upvotes: 139
Views: 406201
Reputation: 1141
Running the sudo nginx
again gives you the following error This indicates that the nginx is running.
or the simple thing you can do is, check if the system that depends on nginx to run like the webapp you might be running, is it working when you hit that particular port
Upvotes: 1
Reputation: 7628
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
Upvotes: 19
Reputation:
Looking at the requirement you have, the below command shall help:
service nginx status
Upvotes: 270
Reputation: 121
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
Upvotes: 12
Reputation: 4549
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
Upvotes: 4
Reputation: 547
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.
Upvotes: 5
Reputation: 834
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.
Upvotes: 24
Reputation: 59348
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"
Upvotes: 18
Reputation: 16327
Can also use the following code to check the nginx status:
sudo /etc/init.d/nginx status
Upvotes: 4
Reputation: 19055
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.
Upvotes: 26
Reputation: 10324
You could use lsof
to see what application is listening on port 80:
sudo lsof -i TCP:80
Upvotes: 44
Reputation: 63244
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.
Upvotes: 1