J'essaie de faire fonctionner mon projet Django sur le serveur de production.Problème de configuration de Django apache-wsgi
Je configure l'environnement en utilisant pip, il est donc identique à l'environnement de développement où tout fonctionne correctement. La seule différence est que je n'utilise pas virtualenv en production, car ce projet est le seul à fonctionner en production. Également en production, il existe un proxy inverse Nginx pour servir du contenu statique et transmettre des requêtes dynamiques à Apache2.
Le fichier Apache wsgi est comme suit:
import sys, os
sys.path.append('/home/project/src')
os.environ['DJANGO_SETTINGS_MODULE'] = 'settings'
import django.core.handlers.wsgi
application = django.core.handlers.wsgi.WSGIHandler()
Quand j'accéder au serveur, je reçois une erreur d'importation:
ImproperlyConfigured: Error importing middleware middleware: "cannot import name UserProfile"
Ce qui fait référence à la middleware.py sous src/dossier qui est référé par les paramètres. Mais je peux importer le middleware et la classe UserProfile depuis l'invite shell ./manage.py.
Il semble y avoir un problème avec les chemins dans le fichier wsgi mais je ne vois pas quoi. La structure du répertoire est:
/home/project
/home/project/src (which contains the settings.py, middleware.py and app folders)
/home/apache/apache.wsgi
Toute aide est grandement appréciée.
Merci, OMat
à quoi ressemble vos applications installées? essayez d'ajouter "/ home/project /" à votre chemin sys – Prashanth
essayez d'ajouter le chemin où vous avez tapé 'django-admin.py ...' – deostroll
mes applications installées sont comme: INSTALLED_APPS = ('django.contrib.auth' , ..., 'profils', 'produits', ...). Voulez-vous dire ajouter "/ home/project" à sys.path dans le fichier wsgi? cela n'a pas fonctionné. – omat