← Back to context

Comment by ash

15 years ago

Django works well under gunicorn HTTP server: http://gunicorn.org/

Let me rephrase - Django is typically run as a WSGI app. uWSGI is a WSGI server that can speak HTTP or its own uwsgi protocol (currently supported by nginx and cherokee). Gunicorn is a WSGI server that can speak HTTP. So my options are:

1) nginx -> via uwsgi -> uWSGI -> via WSGI -> django 2) nginx -> via http -> uWSGI -> via WSGI -> django 3) nginx -> via http -> gunicorn -> via WSGI -> django

This article seems to say that my app really needs to talk to nginx via http, so option 2 or 3 is okay, but option 1 is bad. Why is this?

My feeling is that for the purposes of being a 12 factor app, uwsgi protocol is fine, despite how they've phrased it...