Vous n'êtes pas identifié(e).
Bonjour,
Je m'arrache les cheveux sur la mise en production d'un site avec Django. Concernant la documentation officiel, je n'ai rien compris. J'ai donc cherché d'autre mode d'installation, mais rien ne marche.
Le dernier que j'ai suivi est celui là: http://www.idreammicro.com/post/django-apache2-wsgi mais c'est pareil, l'architecture de l'exemple ne correspond pas au mon architecture mais je ne pense pas que cela pause problème.
J'utilise Dgango 1.6, Apache2 et WSGI
Voici la configuration que j'ai:
- dans /var/www/ j'ai mon répertoire "projet" qui contient deux répertoires: ".idea" et "gen"
Dans "gen" j'ai plusieurs répertoires: "projet" (contient 'settings.py, urls.py, wsgi.py), "templates" et "generation" (contient 'forme.py', views.py, ...)" et un répertoire "apache" (contient django.wsgi)
Voici le contenu de django.wsgi
import os
import sys
path = '/var/www/projet/'
if path not in sys.path:
sys.path.append(path)
sys.path.append('/var/www/projet/gen/')
os.environ['DJANGO_SETTINGS_MODULE'] = 'projet.settings'
import django.core.handlers.wsgi
application = django.core.handlers.wsgi.WSGIHandler()
Dans /etc/apache2/sites_available j'ai mon fichier "gen" dont voici le contenu
<VirtualHost *:80>
ServerName gen.local
ServerAlias http://gen.local
<Directory /var/www/projet/gen>
Order allow,deny
Allow from all
</Directory>
WSGIScriptAlias / /var/www/projet/gen/apache/django.wsgi
</VirtualHost>
Dans mon fichier "hosts" j'ai quelques paramètres. Voila vous savez tout mais rien ne marche
Merci
Hors ligne
"Rien ne marche" n'indique rien du souci.
Regarde dans tes logs Apache et la cause du problème devrait apparaitre.
Hors ligne
Bonjour,
En effet "rien ne marche, ce n'est pas très précis", voici le contenu du fichier error.log de apache2:
[Mon Apr 11 10:06:47 2016] [notice] Graceful restart requested, doing restart
[Mon Apr 11 10:06:47 2016] [error] (9)Bad file descriptor: apr_socket_accept: (client socket)
[Mon Apr 11 10:06:59 2016] [notice] Apache/2.2.22 (Debian) PHP/5.4.36-0+deb7u1 mod_wsgi/3.3 Python/2.7.3 configured -- resuming normal operations
[Mon Apr 11 10:07:05 2016] [error] [client xx.xx.xx.xx] File does not exist: /var/www/gen.local
[Mon Apr 11 10:07:10 2016] [error] [client xx.xx.xx.xx] File does not exist: /var/www/gen.local
[Mon Apr 11 10:07:11 2016] [error] [client xx.xx.xx.xx] File does not exist: /var/www/gen.local
[Mon Apr 11 10:07:11 2016] [error] [client xx.xx.xx.xx] File does not exist: /var/www/gen.local
[Mon Apr 11 10:11:30 2016] [notice] Graceful restart requested, doing restart
[Mon Apr 11 10:11:30 2016] [error] (9)Bad file descriptor: apr_socket_accept: (client socket)
[Mon Apr 11 10:11:32 2016] [notice] Apache/2.2.22 (Debian) PHP/5.4.36-0+deb7u1 mod_wsgi/3.3 Python/2.7.3 configured -- resuming normal operations
[Mon Apr 11 10:11:48 2016] [error] [client xx.xx.xx.xx] File does not exist: /var/www/gen.local
[Mon Apr 11 13:52:35 2016] [notice] Graceful restart requested, doing restart
[Mon Apr 11 13:52:35 2016] [error] (9)Bad file descriptor: apr_socket_accept: (client socket)
[Mon Apr 11 13:52:36 2016] [notice] Apache/2.2.22 (Debian) PHP/5.4.36-0+deb7u1 mod_wsgi/3.3 Python/2.7.3 configured -- resuming normal operations
[Mon Apr 11 13:56:43 2016] [notice] Graceful restart requested, doing restart
[Mon Apr 11 13:56:43 2016] [notice] Apache/2.2.22 (Debian) PHP/5.4.36-0+deb7u1 mod_wsgi/3.3 Python/2.7.3 configured -- resuming normal operations
[Mon Apr 11 13:59:45 2016] [notice] Graceful restart requested, doing restart
[Mon Apr 11 13:59:45 2016] [error] (9)Bad file descriptor: apr_socket_accept: (client socket)
[Mon Apr 11 13:59:45 2016] [notice] Apache/2.2.22 (Debian) PHP/5.4.36-0+deb7u1 mod_wsgi/3.3 Python/2.7.3 configured -- resuming normal operations
Dernière modification par cobra85 (11-04-2016 18:05:40)
Hors ligne
Du coup, j'ai cherché d'autre solutions:
Voici le contenu de mon dossier sites-available:
WSGIPythonPath /var/www/gencb
<VirtualHost *:80>
ServerName www.gencb.local
ServerAlias gencb
Alias /robots.txt /STATIC_ROOT/robots.txt
Alias /favicon.ico /STATIC_ROOT/favicon.ico
Alias /STATIC_URL/ /STATIC_ROOT/
<Directory /STATIC_ROOT/>
Options Includes FollowSymlinks Multiviews
Allow from all
</Directory>
WSGIScriptAlias / /var/www/gencb/projet_cb/wsgi.py
<Directory /var/www/gencb/projet_cb/>
WSGIApplicationGroup %{GLOBAL}
Order deny,allow
Allow from all
</Directory>
</VirtualHost>
Dans le fichier /etc/hosts j'ai inscrit la ligne 127.0.1.1 gencb www.gencb.local
Et la j'ai un peu mieux, lorsque je tape "gencb" dans le navigateur, j'ai l'erreur "BAD ERROR 400" qui apparait (si je tape www.gencb.local, je tombe sur la page classique d'absence de site)
Donc apres recherche, cela viendrais de mon fichier settings.py à la ligne: ALLOWED_HOSTS = [], comme trouver, j'ai donc inscrit:
ALLOWED_HOSTS = ['*'] ou ALLOWED_HOSTS = ['www.gencb.local'] mais sans grand succès. Et mon fichier error.logs n'est pas plus bavard.
Pour info voici l'etat des variables DEBUG = True et TEMPLATE_DEBUG = False.
Sur mon serveur de dev, j'ai taper la commande suivante aussi: python manage.py collectstatic - v 0 avant de pendre le répertoire et de la coller dans mon serveur de prod.
Voila, je pense que tout y est.
Merci de votre aide.
Pour info, l'arborescence de mon répertoire est la suivante:
gencb
|- manage.py
|_gencb
|- settings.py, urls.py, wsgi.py, _init_.py
|_genere
|-views.py, urls.py, models.py, forms.py
|_static
|_images
|_templates
Dernière modification par cobra85 (11-04-2016 18:35:55)
Hors ligne