我已经在django制作了一个名为'kazbah'的网站,我正在尝试部署。
kazbah网站的所有代码都在/ home / git / DjangoProjects / kazbah中,我的httpd.conf看起来像:
<Location "/">
SetHandler python-program
PythonHandler django.core.handlers.modpython
SetEnv DJANGO_SETTINGS_MODULE kazbah.settings
PythonDebug On
PythonPath "['/home/git/DjangoProjects'] + sys.path"
</Location>
我收到以下错误:
ImportError:无法导入设置'kazbah.settings'(是否在sys.path上?是否有语法错误?):没有名为kazbah.settings的模块
知道为什么这个菜鸟会失败?
答案 0 :(得分:2)
对于在/var/www/bbb
(称为“bbb”)下的项目,我在配置文件中设置了以下内容:
<Location "/">
SetHandler python-program
PythonHandler django.core.handlers.modpython
SetEnv DJANGO_SETTINGS_MODULE bbb.settings
PythonPath "['/var/www/', '/var/www/bbb/'] + sys.path"
PythonDebug On
</Location>
答案 1 :(得分:2)
我已经看过几次了。每次,都是因为我错误地设置了这一行:
SetEnv DJANGO_SETTINGS_MODULE kazbah.settings
即使它看起来正确,Django(实际上是python)正在寻找一个我想要的文件夹。尝试调整它,将其更改为:
SetEnv DJANGO_SETTINGS_MODULE settings
另外,你可以在这里调整:
PythonPath "['/home/git/DjangoProjects'] + sys.path"
可能需要将其设置为:
PythonPath "['/home/git/DjangoProjects/kazbah'] + sys.path"
或类似的东西。没有看到您的实际文件夹设置,很难确切地知道。 :)
答案 2 :(得分:1)
答案 3 :(得分:0)
我很确定你可以做sys.path事情 - 它在django文档中。
当我尝试另一个教程时(我认为这有点过时),我可能会查看django doc http://docs.djangoproject.com/en/dev/howto/deployment/modpython/ - http://www.jeffbaier.com/2007/07/26/installing-django-on-an-ubuntu-linux-server/
答案 4 :(得分:0)
好的,也许您的设置文件中存在语法错误。
试试这个:
$ cd /home/git/DjangoProjects/kazbah
$ python
>>> import settings
如果出现任何错误,以这种方式执行此操作将为您提供更好的错误消息。