2012-07-17 23 views
6

Estoy usando uWSGI y Nginx para server mi sitio web de Django (versión 1.4). Mi estructura de archivo es django_mysite/django_mysite/en la cual hay un archivo wsgi.py.
Sigo recibiendo 502 errores de puerta de enlace erróneos. Tengo otros servidores ejecutando nginx y están funcionando bien.nginx django 502 bad gateway

Mi nginx config:

server { 
    listen  80; 
    server_name beta.example.com; 

    keepalive_timeout 70; 

    root /path/to/django_mysite/django_mysite; 


    location root { 
     root html; 
     uwsgi_pass localhost:9000; 
     uwsgi_param UWSGI_SCRIPT django_wsgi; 
     include  uwsgi_params; 
    } 

    location/{ 
     uwsgi_pass localhost:9000; 
     include  uwsgi_params; 
     uwsgi_param SCRIPT_NAME /django; 
     uwsgi_param UWSGI_SCRIPT django_wsgi; 
     uwsgi_modifier1 30; 
    } 
} 

Mi archivo wsgi.py: import sys OS importación

sys.path.append('/path/to/django_mysite/') 
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "django_mysite.settings") 

import django.core.handlers.wsgi 
application = django.core.handlers.wsgi.WSGIHandler() 

El error en el registro es:

*3 recv() failed (104: Connection reset by peer) while reading response header from upstream 

Gracias

+0

¿Qué dicen los registros? –

+0

* 42 connect() a unix: ///tmp/uwsgi.sock failed (2: No hay tal archivo o directorio) al conectarse a la corriente ascendente –

Respuesta

1

La solución que encontré fue la siguiente: el archivo uwsgi.ini que creé para crear los trabajadores uwsgi no especificó un socket. Así que hice otro archivo .ini e hice un socket para él. Ese mismo socket que coloqué en el archivo nginx conf bajo uwsgi_pass. Aquí hay un enlace a las páginas web de django para configurar uwsgi.

https://docs.djangoproject.com/en/dev/howto/deployment/wsgi/uwsgi/

1

que estaba enfrentando el mismo problema, pero yo figered hacia fuera en forma siguiente.

Si se incluye una aplicación de terceros en su proyecto, entonces debe instalarse en su servidor y South es una aplicación de terceros. Considera que South está incluido en tu archivo settings.py y luego south también debería estar instalado en tu servidor. Si ese módulo considera sur aquí, ya está instalado en el servidor, entonces intente actualizarlo. Porque es posible que esté utilizando la versión mejorada del módulo en la máquina local y la versión anterior esté instalada en el servidor.

Cuestiones relacionadas