[英]Django + Apache with wsgi got “Internal Server Error”
尝试将Django项目连接到Apache Server时出现“ 500 Internal Server Error”。
我尝试了很多方法来设置配置文件,包括一些关于stackoverflow的方法。 但是我仍然无法解决问题,您能给我一些进展吗? 非常感谢你!
我的Django项目目录是这样的:
|django
|--MySite
|--MySite
|--wsgi.py
|--django.wsgi
|--urls.py
|--settings.py
|--Blog
|--__init__.py
|--views.py
|--models.py
我的设置如下:
1.httpd-vhosts.conf:
<VirtualHost *:8080> ServerName local.Test WSGIScriptAlias / /Users/Hao/django/MySite/MySite/django.wsgi <Directory /Users/Hao/django/MySite/MySite> Options Indexes MultiViews AllowOverride All Require all granted <Files wsgi.py> Require all granted </Files> </Directory> </VirtualHost>
2. django.wsgi:
import os, sys sys.path.append('/usr/local/django') sys.path.append('/Users/Hao/django') sys.path.append('/Users/Hao/django/MySite') os.environ['DJANGO_SETTINGS_MODULE'] = 'MySite.settings' import django.core.handlers.wsgi application = django.core.handlers.wsgi.WSGIHandler()
3.最后,在浏览器中打开127.0.0.1:8080,出现“ 500 Internal Server Error”。
谢谢。
您必须定义wsgi.py
<VirtualHost *:80>
ServerName local.Test
WSGIProcessGroup local.Test
WSGIPassAuthorization On
WSGIDaemonProcess local.Test python-home=""#must virtual env path python-path=/Users/Hao/django/
WSGIScriptAlias / /Users/Hao/django/MySite/MySite/wsgi.py process-group=local.Test
<Directory /Users/Hao/django/MySite/MySite>
<Files wsgi.py>
Require all granted
</Files>
</Directory>
</VirtualHost>
您的wsgi.py应该像这样
import os
from django.core.wsgi import get_wsgi_application
import sys
sys.path.append('/Users/Hao/django/MySite')
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "MySite.settings")
application = get_wsgi_application()
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.