2009-12-06 4 views
1

J'installe Django sur Bluehost et l'une des étapes pour l'installer consistait à installer flup sur leur serveur. Je l'ai fait et tout fonctionne bien quand je suis connecté via le SSH. Cependant quand je frappe réellement la page dans mon navigateur il ne peut pas trouver le flup. Je reçois cette erreur dans le journal du serveur:Définition de PYTHONPATH pour les requêtes http sur un serveur partagé

ERROR: No module named flup. Unable to load the flup package. In order to run django as a FastCGI application, you will need to get flup from http://www.saddi.com/software/flup/ If you've already installed flup, then make sure you have it in your PYTHONPATH.

Puisqu'il reconnaît flup quand je suis en SSH ma meilleure estimation est qu'il ya un autre fichier bash je dois changer pour obtenir PYTHONPATH pointant vers les bons endroits pour la requête http. Mais comme c'est un serveur partagé, je n'ai pas beaucoup de privilèges en dehors de mon répertoire personnel.

Des idées?

Répondre

2

Si vous pouvez identifier ce module tente de import flup, vous pouvez exactement préfixer que l'importation avec un sys.path.append du chemin vers lequel vous avez installé flup - tant que le sys.path.append arrive avant le import flup, vous êtes dans le trèfle.

+0

J'appelle la fonction d'ajout dans mon fichier fcgi. Serait-ce suffisant ou aurais-je besoin de localiser le fichier django qui appelle flup et le changer manuellement là? – Adam

+0

Si l'erreur persiste, alors vous ne faites pas l'ajout suffisamment tôt (et vous devrez peut-être identifier - et, soupirer, modifier - un module django [[ou autre]] qui sera chargé avant que l'erreur ne se produise). –

+1

Cela semble très bien. Utile pour fructifier le chemin: 'site.addsitedir'. – bobince

Questions connexes