经过几天令人沮丧的尝试,我无法使用mod_wsgi部署django站点。有人可以理智地检查这些细节,看看是否有明显的错误吗?这是我的第一个Django部署。它正在使用python manage.py runserver 10.10.10.214:8080
运行文件,但是我无法部署
我在wsgi.py
中的/home/user/django/mysite
文件(也在我的settings.py等位置)
"""
WSGI config for myproject project.
It exposes the WSGI callable as a module-level variable named ``application``.
For more information on this file, see
https://docs.djangoproject.com/en/1.7/howto/deployment/wsgi/
"""
import os
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "mysite.settings")
from django.core.wsgi import get_wsgi_application
application = get_wsgi_application()
我的apache .conf文件:
LoadModule wsgi_module /home/conf/apache2/modules/mod_wsgi.so #dont read into the locations too much - they are correct
WSGIScriptAlias / /home/user/django/mysite/wsgi.py
WSGIPythonPath /home/user/django
<Directory /home/user/django/mysite>
<Files wsgi.py>
Require all granted
</Files>
</Directory>
我被迫使用高度预定义的apache版本,但其中包含上面的conf文件。根本没有任何帮助。
干杯,亚瑟
最佳答案
试试这个wsgi.py:
import os
import sys
os.environ["DJANGO_SETTINGS_MODULE"] = "mysite.settings"
sys.path.append('/home/user/django/mysite/')
sys.path.append('/home/user/django/')
from django.core.wsgi import get_wsgi_application
application = get_wsgi_application()
并将其添加到您的conf中,别名之前:
WSGIDaemonProcess <process_name> processes=2 threads=15 user=<username> display-name=%{GROUP}
WSGIProcessGroup <process_name>
进程名称可以是“ mysite.com”或其他名称。该用户是Linux用户。
关于python - 无法使用mod_wsgi和apache部署django,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/31166962/