2010-10-18 11 views
2

que je suis l'exemple ici: http://code.google.com/p/modwsgi/wiki/IntegrationWithPylonsPylônes + mod_wsgi -> ImportError: Aucun module nommé paste.deploy

cependant, il ne fonctionne pas - je reçois "ImportError: Aucun module nommé paste.deploy" dans le journal des erreurs Apache. Googling dans ce cas ne permet pas - je vois des choses sur les autorisations, mais toutes mes autorisations sont bien. D'où vient vraiment paste.deploy? Il vient de PasteDeploy-1.3.4-py2.6.egg dans les packages de site, installé dans mon répertoire pylonsdevenv, non? Alors, comment Apache est-il supposé savoir ce répertoire? Le projet pylons doit-il être dans le répertoire pylonsdevenv?

merci!

Répondre

4

I ajouté:

import site 
site.addsitedir('/<yadayada>/pylonsdevenv/lib/python2.6/site-packages') 

au sommet de mon dossier wsgi, puis définissez debug = False dans mon fichier development.ini (et plus tard, le fichier deployment.ini, je présume), qui semblait travailler ...

1

Si vous pouvez importer (à partir de paste.deploy import loadapp) manuellement, cela doit être un problème avec sys.path. Assurez-vous également que Apache utilise l'interpréteur Python approprié. J'ai quelque chose comme ça dans mon « passanger_wsgi.py » sur Dreamhost:

INTERP = "/home/myuser/bin/python" 
if sys.executable != INTERP: os.execl(INTERP, INTERP, *sys.argv) 

cwd = os.getcwd() 
sys.path.append(os.getcwd()) 
sys.path.append('/home/myuser/blog') 

Vous pouvez mettre un peu de débogage et de vérifier quels chemins sont à l'intérieur « sys.path ».

Espérons que cela aide.