2013-06-23 5 views
0

J'ai Django mis en place et fonctionne bien sur ma machine locale, et je tente maintenant de le déployer dans un environnement de production avec mod_wsgi. Une variable est que localement j'ai Python 2.7.3 et dans mon environnement de production (EC2) j'ai Python 2.6.8, qui est théoriquement encore compatible avec Django 1.5.Django erreur mod_wsgi

Je suis en mesure de voir la page Django intro et a couru avec succès ./manage.py startapp myapp et ./manage.py syncdb, mais après le redémarrage httpd et de tenter de frapper le site à travers mon navigateur je reçois une erreur 500 et ce qui suit montre dans mon error_log:

mod_wsgi (pid=7852): Exception occurred processing WSGI script '/path/to/my/django.wsgi'. 
Traceback (most recent call last): 
    File "/usr/lib/python2.6/site-packages/django/core/handlers/wsgi.py", line 236, in __call__ 
    self.load_middleware() 
    File "/usr/lib/python2.6/site-packages/django/core/handlers/base.py", line 59, in load_middleware 
    mw_instance = mw_class() 
TypeError: auth() takes exactly 1 argument (0 given) 

Mes paramètres sont, à toutes fins utiles, identiques à ceux de mon environnement local (enregistrer le drapeau DEBUG, etc.). Je n'arrive pas à trouver le problème de configuration. Personnellement, je trouve la documentation de Django plutôt mauvaise pour le déploiement et pas beaucoup d'autres ont couru dans ce mur particulier.

Je suis heureux de donner plus de détails si nécessaire.

Répondre

3

Je fume quand cela arrive, mais j'ai trouvé le problème quelques instants après l'avoir posté. J'avais une ligne dans settings.py sous la section middleware qui pointait vers le processeur de contexte auth et non un module middleware. Je l'ai enlevé et tout va bien.