Le 26/08/2014 14:20, Charlie Gentil a écrit :
À tout hasard, si vous aviez une autre solution que gunicorn-Nginx
moins prise de tête je suis preneur... ;)

Ça peut être pas mal de commencer par faire marcher morceau par morceau. Donc, oublions gunicorn pour le moment :)

1. Configurer nginx:

server {
    listen 80;
    server_name localhost;

    location / {
        proxy_pass http://127.0.0.1:8000/;
        proxy_read_timeout 300;
        proxy_redirect off;
        proxy_buffering off;
        proxy_store off;
        proxy_set_header Host $host;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }

    location /static/ {
        alias <RACINE_DU_PROJECT>/_static/;
    }
}

Cette conf est la plus simple possible pour faire un reverse de base et servir les static comme des static. (L'ordre des directives "location" n'a aucune importance).

2. Configurer Django:

STATIC_ROOT = '<RACINE_DU_PROJECT>/_static'
STATIC_URL = '/static/'

3. Collecte

./manage.py collectstatic

Là, vérifie que tu as bien des fichiers dans _static de ton projet.

3. Lancer le serveur du projet :
./manage.py runserver --nostatic

On lui dit de ne pas servir les static pour se mettre dans une configuration similaire à gunicorn, uwsgi, etc.

4. Aller sur http://localhost/

Si tout ceci fonctionne, tu pourras alors envisager de basculer à gunicorn ou uwsgi (je conseille gunicorn pour démarrer, c'est plus simple)

5. Exercice bonus: si tu utilises MEDIA_ROOT / MEDIA_URL, ajouter sa prise en charge dans nginx :)

--
Olivier

--
Olivier
_______________________________________________
django mailing list
[email protected]
http://lists.afpy.org/mailman/listinfo/django

Répondre à