Bonjour Charlie, Je vais encore faire un nouvel essai d'explication mais je pense que ton problème ne vient ni de gunicorn, ni de nginx mais de ta compréhension du fonctionnement des staticfiles.
En développement Django le fait pour toi il merge dans STATIC_URL les répertoires /static/ de chaque apps. En production, tu dois utiliser *STATIC_ROOT* et la commande *python manage.py collectstatic * Nginx va proxifier ton app Django lancée par gunicorn ou uwsgi mais c'est également lui qui va servir directement les fichiers static. * *Pour commencer concentre toi sur servir les staticfiles uniquement.* *Fait ton collectstatic et *dans ton STATIC_ROOT ajoute un fichier test.html* (contenant Hello World par exemple) * Tant que tu n'arrives pas à le charger avec http://localhost/test.html ce n'est pas la peine d'aller plus loin. * Pour que nginx puisse lire ton fichier il faut que l'utilisateur qui lance nginx puisse y accèder. Par défaut c'est www-data sur Ubuntu. Si ton utilisateur est toto Ce que je te recommande c'est de tout mettre dans /srv/projects/<ton_project> De définir STATIC_ROOT comme étant */src/projects/<ton_projet>/public/static/* De définir STATIC_URL comme étant */static/* Ensuite faire: sudo mkdir -p /srv/projects/<ton_project>/public/static sudo chown -R toto:www-data /srv/ sudo find /srv -type d -exec chmod g+rs {} \; Ensuite tu peux faire ton python manage.py collectstatic Tu devrais voir tous les fichiers static de ton projet dans */src/projects/<ton_projet>/public/static/ *Avec ce genre de droits:* *-rw-rw-r-- 1 toto www-data 12 août 29 09:41 /srv/projects/django-story/public/statics/test.html root /srv/projects/<ton_projet>/public/; location /static/ { alias /srv/projects/<ton_projet>/public/static/; } En esperant que ça t'aide, — Rémy
_______________________________________________ django mailing list [email protected] http://lists.afpy.org/mailman/listinfo/django
