我一直在开发Django应用程序,我已经准备好转移到生产服务器了。我已经安装了Apache和mod_wsgi,我使用了一个测试来检查它是否都能工作,而且它确实有效。但是现在我很难让它和Django一起工作。
我已经创建了wsgi.py文件:
import os
import os.path
import sys
sys.path.append('/var/www/html/mideastinfo/lib/python2.7/site-packages/django/bin/mideastinfo')
#os.environ['PYTHON_EGG_CACHE'] = 'path to a directory for egg cache'
os.environ['DJANGO_SETTINGS_MODULE'] = 'mideastinfo.settings'
import django.core.handlers.wsgi
application = django.core.handlers.wsgi.WSGIHandlers()我让http.conf通过WGSIScriptAlias指向它。它不起作用,我知道这与sys.path有关,我不知道该怎么做。
我有一个开发环境,在其中我完成了所有的构建。然后,我将所有的项目依赖项安装到服务器用户pip和一个requirements.txt上。然后,我把我的项目文件移过来了。但我想我搞错了所有的地图和画。有什么想法吗?我觉得离完成这件事还有一步之遥。
发布于 2014-09-30 02:19:04
我将分享如何配置一个简单的示例:
import os,sys
apache_configuration = os.path.dirname(__file__)
project = os.path.dirname(apache_configuration)
workspace = os.path.dirname(project)
sys.path.append(workspace)
sys.path.append('PATH TO YOUR PROJECT ROOT')
os.environ['DJANGO_SETTINGS_MODULE'] = 'mideastinfo.settings'
import django.core.handlers.wsgi
application = django.core.handlers.wsgi.WSGIHandler()在Apache上的VirtualHost指令中,必须有:
WSGIScriptAlias / /PATH/TO/YOUR/.wsgi示例:
<VirtualHost *:80>
ErrorLog /home/user/logs/error.log
...
WSGIScriptAlias / /PATH/TO/YOUR/.wsgi
...
</VirtualHost>https://stackoverflow.com/questions/26111122
复制相似问题