user1261499
user1261499

Reputation: 231

nginx can't listen on port 80

I'm trying to set nginx with gunicorn but I keep getting the "Welcome to nginx!" page. I am able to successfully listen to other ports (like 8080) but port 80 does not work at all.

server { 
listen          80;
server_name     host.ca www.host.ca;
access_log      /var/log/nginx/example2.log;

location / {
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header Host $http_host;
    proxy_redirect off;
    proxy_pass   http://127.0.0.1:8000;

}

}

I'm running the server as root. I can't seem to see anything running in port 80.

Upvotes: 4

Views: 5526

Answers (1)

Kyle Kelley
Kyle Kelley

Reputation: 14144

Diagnosing the Problem

Make sure to check your logs (likely /var/log/nginx or some variant).

Check to see what might be hogging port 80

netstat -nlp | grep 80

Sites-enabled, port hogging

Then, make sure you have the Django site enabled in sites-enabled. Delete any old symlinks if you created one first.

rm /etc/nginx/sites-enabled/django
ln -s /etc/nginx/sites-available/django /etc/nginx/sites-enabled/django

Double check your /etc/nginx/nginx.conf to make sure it's loading sites-enabled and not loading some other default.

http {
  ...
  include /etc/nginx/sites-enabled/*;
}

After you do all this, shut down and restart the nginx service.

Either service nginx restart or service nginx stop && service nginx start

Upvotes: 3

Related Questions