Django Deployment: ImportError: Не удалось импортировать настройки «settings.py» (это на sys.path?): Нет модуля с именем settings.py - PullRequest
1 голос
/ 18 августа 2011

Привет всем и спасибо, что нашли время посмотреть на мой вопрос.

Я новичок в Python, думал, что у меня есть опыт работы с php / mysql.

Мне только что передали хранилище кода сайта django и попросили его запустить и запустить на сервере. Я был в состоянии запустить syncdb и мигрировать. Сейчас я пытаюсь перейти на свой сайт в браузере, и это ошибка, которую я получаю:

ImportError: Could not import settings 'settings.py' (Is it on sys.path?): No module named settings.py

Мой конфиг apach2.conf python выглядит так:

<Location "/">
SetHandler python-program
PythonHandler django.core.handlers.modpython
PythonOption django.root /myproject
SetEnv DJANGO_SETTINGS_MODULE settings.py
PythonPath "['/home/ubuntu/envs/live/','/home/ubuntu/envs/live/myproject','/home/ubuntu/envs/live/myproject/apps', '/home/ubuntu/envs/stage/myproject', '/home/ubuntu/envs/', '/var/www'] + sys.path"
PythonDebug on

Файл settings.py находится в каталоге /home/ubuntu/venvs/live/myproject.

Может кто-нибудь помочь мне здесь?

Спасибо!

Ответы [ 2 ]

1 голос
/ 18 августа 2011

Это должно быть просто:

SetEnv DJANGO_SETTINGS_MODULE settings

Нет '.py'.То есть это путь к модулю Python, а не имя файла.

Обратите внимание, что mod_python официально является мертвым проектом.Поддержка в Django устарела.Вам следует искать альтернативы вместо mod_python для размещения Django.

0 голосов
/ 18 августа 2011

Я думаю, что вы должны изменить порядок следующих строк:

SetEnv DJANGO_SETTINGS_MODULE settings.py
PythonPath "['/home/ubuntu/envs/live/','/home/ubuntu/envs/live/myproject','/home/ubuntu/envs/live/myproject/apps', '/home/ubuntu/envs/stage/myproject', '/home/ubuntu/envs/', '/var/www'] + sys.path"

Сначала установите путь Python, где можно найти settings.py, а затем установите env для этого файла.

Но вы должны просто установить на mod-wsgi как очень хорошо документированный .

...