Мне знали проект Django как "wsp", который работает очень хорошо на порте. Однако я хочу переместить свой проект от порта до его собственного подкаталога (например, localhost/wsp
вместо localhost:8080
).
Я следовал руководству по конфигурированию WSGI от Google, но он все еще не выполняет проект правильно. Вот wsgi.py
сценарий, в корневом каталоге моего проекта:
import os
import sys
os.environ['DJANGO_SETTING_MODULE'] = "wsp.settings"
import django.core.handlers.wsgi
application = django.core.handlers.wsgi.WSGIHandler()
Я также удостоверился, что добавил следующую конфигурацию к /etc/apache2/sites-available/000-default.conf
:
WSGIScriptAlias / /var/www/html/wsp/wsgi.py
<Directory /home/grumpy/example-2/apache>
order deny,allow
Allow from all
<Directory>
У меня есть WSGI (libapache2-mod-wsgi
) и APXS (apache2-prefork-dev
) пакеты установлены в моей системе.
Однако после попытки выполнить мой проект, я получаю ошибку:
ImproperlyConfigured: Requested setting MIDDLEWARE_CLASSES,
but settings are not configured. You must either define the
environment variable DJANGO_SETTINGS_MODULE or call
settings.configure() before accessing settings
Как я получаю свой проект Django работать над Apache2?
Добавьте это к вершине Вашего 000-default
файл:
WSGIDaemonProcess mysite python-path=/var/www/html/mysite:/usr/local/lib/python2.7/site/site-packages
WSGIScriptAlias / /var/www/html/mysite/wsgi.py
WSGIProcessGroup mysite
Настраивают пути к файлам туда, где Ваши файлы хранятся.