我有一个名为“wsp”的 Django 项目,它在 port 上运行良好。但是,我想将我的项目从 port 移至其自己的子目录(例如,localhost/wsp
而不是localhost:8080
)。
我按照 Google 的 WSGI 配置指南进行了操作,但项目仍然无法正常运行。以下是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 上运行?
答案1
将其添加到文件顶部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
配置存储文件的文件路径。