Как настроить Django на Gunicorn и Nginx (Mac OS X)

Я пытаюсь настроить Django с помощью Nginx + Gunicorn и Supervisor в Lion. Я уже установил:

Ход выполнения: MySQL DMG + MySQLdb Compile + Python + brew nginx + easy_install gunicorn + pip install Django + easy_install supervisor.

Сведения о текущей конфигурации:

Nginx:
upstream app_server {
     server unix:/tmp/gunicorn.sock fail_timeout=0;
}
server {
    listen       80;
    server_name  localhost;
    #Static
    root /Users/andre/sites;
    location / {
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header Host $http_host;
        proxy_redirect off;
        if (!-f $request_filename) {
            proxy_pass http://app_server;
            break;
        }
    }

Gunicorn: здесь

Supervisor:
[program:gunicorn]
command=/usr/local/bin/gunicorn main:application -c    /Users/devepy/desktop/andre/andre/gunicorn.conf.py
directory=/Users/andre/desktop/andre/myproject
user=nobody
autostart=true
autorestart=true
redirect_stderr=True

На самом деле я понятия не имею, что еще делать, но потребовались недели, чтобы понять, что Mac OSX — это безумие.


person user1376211    schedule 23.11.2012    source источник


Ответы (2)


Я почти уверен, что вы уже решили эту проблему, но я наткнулся на очень хороший блог, который может вам помочь. http://cheng.logdown.com/posts/2015/01/27/deploy-django-nginx-gunicorn-on-mac-osx

person yguw    schedule 27.07.2017

Я написал руководство о том, как подключить Nginx к Gunicorn и Gunicorn к приложению WSGI (имеется в виду , Django, Flask, Tornado и др.)

Короче говоря:

  • связать Gunicorn с вашим приложением: gunicorn --bind 0.0.0.0:8000 wsgi
  • обновить nginx.conf для передачи запросов в Gunicorn

    location / {
        proxy_pass http://127.0.0.1:8000;
    }
    

Если вы считаете, что более подробная информация из учебника сделает этот ответ более полезным, оставьте комментарий, и я обновлю его здесь.

person Zach Valenta    schedule 21.01.2019