Привет всем, и спасибо, что нашли время, чтобы посмотреть на мой вопрос.
Я новичок в Python, думал, что у меня есть опыт работы в php/mysql.
Мне просто вручили репозиторий кода сайта django и попросили его запустить и запустить на сервере. Мне удалось запустить syncdb и выполнить миграцию. Теперь я пытаюсь перейти на мой сайт в браузере, и это ошибка, которую я получаю:
ImportError: Could not import settings 'settings.py' (Is it on sys.path?): No module named settings.py
Мой конфигуратор pachon apach2.conf выглядит так:
<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.
Может кто-нибудь, пожалуйста, помогите мне здесь?
Благодарю!
Это должно быть просто:
SetEnv DJANGO_SETTINGS_MODULE settings
Нет '.py'. То есть, это путь к модулю Python, а не имя файла.
Обратите внимание, что mod_python официально является мертвым проектом. Поддержка в Django устарела. Вы должны посмотреть на альтернативы вместо mod_python для размещения Django.
Я думаю, вы должны перевернуть порядок следующих строк:
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 как очень хорошо документированный.
envs
илиvenvs
? Вы использовалиenvs
в своем коде, но говорите, что это вvenvs
.