Ah peux tu vérifier les droits d'accès de www-data aux fichiers ?

sudo su www-data
ls /data/site_django/static/;

Dans le alias il te faut mettre l'adresse de ton static_root.
Le 29 août 2014 08:32, "Charlie Gentil" <[email protected]> a
écrit :

> Bonjour,
>
> Bon ben je bloque franchement ...
>
> J'ai repris ta conf dans nginx.conf mais ai mis les lignes suivantes dans
> location /static/ :
> location /static/ {
>         alias
> /usr/lib/python3.4/site-packages/django/contrib/admin/static/;
>      }
>
> Histoire d'aller au plus simple.
> J'ai même essayé ceci :
> location /static/admin/css {
>         alias
> /usr/lib/python3.4/site-packages/django/contrib/admin/static/admin/css;
>      }
>
> J'ai prendre soin de faire un restart de nginx et changer de port pour
> forcer le rafraichissement ... rien n'y fait... :(
>
> C'est c*n ... django + gunicorn + nginx semblait simple sur le papier ...
>
> Bonne journée à tous.
>
>
>
> Le mardi 26 août 2014, 17:20:19 Charlie Gentil a écrit :
> >
> > J'ai suivi ton conseil, refais un simple projet et suivi ta démarche :
> les commentaires ci-dessous ...
> >
> > Le mardi 26 août 2014, 15:32:54 Olivier Meunier a écrit :
> >
> > > 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).
> > OK. J'ai renseigné le fichier conf que j'ai créé dans
> /etc/nginx/sites-available et dont un lien existe dans
> /etc/nginx/sites-enabled
> > > 2. Configurer Django:
> > >
> > > STATIC_ROOT = '<RACINE_DU_PROJECT>/_static'
> > > STATIC_URL = '/static/'
> > OK
> > > 3. Collecte
> > >
> > > ./manage.py collectstatic
> > >
> > > Là, vérifie que tu as bien des fichiers dans _static de ton projet.
> > OK, je les ai. Cela me donne donc l'architecture suivante :
> > |monprojet
> >    |monprojet
> >        |...
> >    |_static
> >        |admin
> >    |manage.py
> >
> > > 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.
> > OK
> > > 4. Aller sur http://localhost/
> > Si je vais dans http://localhost/ j'ai une erreur 404... normal, je
> pense que c'est plutôt localhost:8000. Point positif sur cette page erreur
> j'ai un joli nginx/1.6.1, donc à priori ça fonctionne un peu ;).
> > Malheureusement, si je vais sur http://localhost:8000/admin la mise en
> page n'est pas faite.
> >
> > Pour info, j'ai aussi rentré les lignes de config directement dans
> ngixn.conf. ==> même topo.
> > J'ai aussi ajouté un dossier static dans _static et y ai mis une copie
> d'admin, histoire de tester un peu tout... mais rien n'y fait.
> >
> > Je commence à me demander si je vais pas utiliser le serveur de dev :-@
> :(
> >
> > > 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 :)
> > >
> > _______________________________________________
> > django mailing list
> > [email protected]
> > http://lists.afpy.org/mailman/listinfo/django
> _______________________________________________
> django mailing list
> [email protected]
> http://lists.afpy.org/mailman/listinfo/django
>
_______________________________________________
django mailing list
[email protected]
http://lists.afpy.org/mailman/listinfo/django

Répondre à