502 error after adding module to a Django project running on nginx and gunicorn

thebeagle asked:

I am trying to add a module to an existing Django project, but once I have done it I get a 502 error. The server is running Ubuntu. I don’t think it has to do with the applications code because I got it running on the django development server. It goes away when I take out the app’s name from settings.py and restart gunicorn.

Here’s a part of the log

2011/07/15 01:24:45 [error] 16136#0: *75593 connect() failed (111: Connection refused)   while connecting to upstream, client: 24.17.8.152, server: staging.site.org, request: "GET / HTTP/1.1", upstream: "http://127.0.0.1:8020/", host: "staging.site.org"

Here’s the nginx config file.
Nginx Config File

I’m not sure what other information is needed. Not sure where the gunicorn logs are located. My server admin skills are kind of lacking. What sort of things should I be doing to figure out where the problem is starting.

My answer:


Connection refused is a pretty obvious one. It means your backend (in this case, gunicorn) is not running on the port you’ve specified in your nginx config (in this case, 8020).

One of two things is going on here. Either:

  1. gunicorn is running on a different port, or
  2. gunicorn is not running.

If you’re sure this is the right port, then try starting gunicorn.


View the full question and answer on Server Fault.

Creative Commons License
This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.