Coincé avec le déploiement de django avec apache + mod_wsgi
J'obtiens une erreur de serveur interne 500 et dans les fichiers de log, il écrit:
[Thu Jun 14 16:30:22 2012] [error] [client 127.0.0.1] ImportError: Could not import settings 'mysite.settings' (Is it on sys.path?): No module named mysite.settings
voici mon httpd.conf:
ServerName localhost
<VirtualHost *:80>
ServerAdmin ttt@mysite.com
ServerName mysite.com
ServerAlias www.mysite.com
DocumentRoot /var/www/mysite/
LogLevel warn
WSGIDaemonProcess processes=2 maximum-requests=500 threads=1
WSGIScriptAlias //var/www/mysite/mysite/wsgi.py
Alias /media /var/www/mysite/mysite/static/media/
</VirtualHost>
wsgi.py:
import os
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "mysite.settings")
from django.core.wsgi import get_wsgi_application
application = get_wsgi_application()
Il vous manque WSGIProcessGroup. Votre demande ne doit pas être déléguée à un démon de groupe de processus avec ce que vous avez.
nan ce n'est pas le problème... mon sys chemin était le problème
Le sys.chemin d'accès peut très bien avoir été votre problème, mais il vous manque toujours un WSGIProcessGroup directive. Voir code.google.com/p/modwsgi/wiki/...
nan ce n'est pas le problème... mon sys chemin était le problème
Le sys.chemin d'accès peut très bien avoir été votre problème, mais il vous manque toujours un WSGIProcessGroup directive. Voir code.google.com/p/modwsgi/wiki/...
OriginalL'auteur Tony Kyriakidis | 2012-06-14
Vous devez vous connecter pour publier un commentaire.
Cette problématique est traitée dans les deux mod_wsgi documentation http://code.google.com/p/modwsgi/wiki/IntegrationWithDjango et la Django la documentation de déploiement https://docs.djangoproject.com/en/1.4/howto/deployment/wsgi/modwsgi/ qui note que le projet doit être à votre Python path. Vous pouvez utiliser le
WSGIPythonPath
directive ou de définir lapython-path
dans votreWSGIDaemonProcess
directive de la documentation de Django. Ou vous pouvez l'ajouter à lasys.path
dans votre fichier wsgi comme le mod_wsgi docs état.Mon erreur. J'ai mis à jour la réponse à réfléchir que vous pouvez définir le chemin d'accès dans votre
WSGIDaemonProcess
.ie: import sys # environnement virtuel des chemins de site.addsitedir('/home/<sitehome>/virtualenv/.../lib/python2.7/site-packages/')
OriginalL'auteur Mark Lavin