У меня возникают проблемы с развертыванием моего первого приложения Django на ubuntu / Apache. Я следил за руководствами на djangoproject.com и рыскал по Интернету в поисках ответов, и я застрял. У меня есть все необходимое, но когда я пытаюсь посетить свой сайт (twilightinternal.com), я получаю следующую ошибку:
ImportError: Could not import settings 'twilight_boutique.settings' (Is it on sys.path? Does it have syntax errors?): No module named twilight_boutique.settings
Мой код django находится в папке / root / django_projects / twilight_boutique
У меня есть следующая информация в моих сайтах-available / twilightinternal:
<VirtualHost *>
ServerAdmin shawn@coldfeetstudios.com
ServerName www.twilightinternal.com
ServerAlias twilightinternal.com
DirectoryIndex index.html
DocumentRoot /var/www/twilightinternal/
ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory "/usr/lib/cgi-bin">
AllowOverride None
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
Order allow,deny
Allow from all
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
CustomLog ${APACHE_LOG_DIR}/access.log combined
<Location "/">
SetHandler python-program
PythonHandler django.core.handlers.modpython
SetEnv DJANGO_SETTINGS_MODULE twilight_boutique.settings
PythonOption django.root /root/django_projects/twilight_boutique
PythonDebug Off
PythonPath "['/root/django_projects', '/var/www'] + sys.path"
</Location>
</VirtualHost>
Я действительно застрял, и любая помощь будет принята с благодарностью.
Во-первых, вы должны использовать mod_wsgi, если можете, или FastCGI в качестве запасного варианта.
Ваши настройки Apache выглядят правильно, возможно, это ваш settings.py. Скорее всего, это проблема с разрешениями. Есть ли конкретная причина, по которой вы запускаете его из / root? Обычно apache не запускается с правами root и не может читать какие-либо файлы в / root. Попробуйте переместить проект в другое место.
Если это не помогает, попробуйте еще несколько шагов отладки.
Сервер разработки работает правильно?
cd /root/django_projects/twilight_boutique
python manage.py runserver
Если это не удается, в вашем файле настроек есть синтаксическая ошибка.
Вы также можете попробовать использовать оболочку python, чтобы попытаться отладить это. Запустите python из любого каталога и запустите следующий код:
import sys
sys.path.insert(0, '/root/django_projects')
import twilight_boutique.settings