Проблема с настройками импорта в django

Это кажется распространенной проблемой для многих других, но ни одно из других исправлений не помогло мне. Вот мой файл apache2/sites-available:

<Location "/">
    SetHandler python-program
    PythonHandler django.core.handlers.modpython
    SetEnv DJANGO_SETTINGS_MODULE getgps.settings
    PythonOption django.root /
    PythonDebug On
</Location>

Alias /media/css /home/getgps/media/css
<Location "/media/css">
    SetHandler None
</Location>

И сообщение об ошибке:

Error: Could not import settings 'code.settings' (Is it on sys.path? Does it have syntax errors?): No module named settings

settings.py находится в /home/getgps/code/settings.py и / home / getgps / code связан таким образом, что это getgps в среде python (если я ввожу import getgps.settings в командную строку, он импортирует файл вопрос, независимо от того, где я нахожусь, когда я загружаю командную строку Python).

tldr: sybolic link работает, файл apache великолепен, но мне, похоже, не нравится моя файловая структура.

2 ответа

Решение

Вы должны закомментировать:

PythonOption django.root /

как это не нужно (и не работает в этом случае). Вам нужно использовать эту строку, только если ваш сайт не в DocRoot.

Obs: если вы можете, рекомендуется переключиться с mod_python на mod_wsgi, но не все провайдеры принимают его, так как иногда требуется перезапуск apache.

Наконец, я просто переместил код в родительский каталог (и переделал символическую ссылку), и он работал нормально. Я понятия не имею, почему это не работает. Все предыдущие кодовые базы, над которыми я работал, были настроены так...

Другие вопросы по тегам