Python 使用wsgi部署Django

Python 使用wsgi部署Django,python,django,passenger,wsgi,dreamhost,Python,Django,Passenger,Wsgi,Dreamhost,似乎我使用这段代码成功地部署了应用程序 import sys, os sys.path.append(os.getcwd()) os.environ['DJANGO_SETTINGS_MODULE'] = "UR.settings" import django.core.handlers.wsgi application = django.core.handlers.wsgi.WSGIHandler() 然而,Django没有正常运行,因为它无法获得Django的最新版本,并使用Python2

似乎我使用这段代码成功地部署了应用程序

import sys, os
sys.path.append(os.getcwd())
os.environ['DJANGO_SETTINGS_MODULE'] = "UR.settings"
import django.core.handlers.wsgi
application = django.core.handlers.wsgi.WSGIHandler()
然而,Django没有正常运行,因为它无法获得Django的最新版本,并使用Python2.3运行旧版本。我安装了最新的Django和Python2.7,并添加了这两行代码,现在出现了一个内部服务器错误

INTERP = '/home/username/opt/python-2.7.7/bin/python'
if sys.executable != INTERP:
        os.execl(INTERP, INTERP, *sys.argv)
我确信这是我的Python 2.7的正确路径。。。非常感谢您的帮助

我终于解决了这个问题, 我在dreamhost上进行部署,他们的服务器上有django1.2和python2.6,每当我尝试使用python2.7并让它成为默认值时,就会使用python2.6并成功执行python2.7,但由于某种原因,它会运行到django1.2,而不是我安装的最新django

我在/usr/(当然是使用sudoer帐户)中安装了python2.7,然后我将新的django安装到站点包中,现在我不再需要执行python2.7的行,因为它现在是django 1.7的默认行

我还编辑了passenger wsgi文件,这段代码对我来说非常好

import sys, os
sys.path.append(os.path.join(os.getcwd(), 'projectname')) #I needed this
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "settings")
import django.core.handlers.wsgi
application = django.core.handlers.wsgi.WSGIHandler()
现在唯一的挫折是服务器的响应速度变慢,但除此之外,一切都很顺利

我发现了一个很好的方法,可以进入django的日志

  • ssh连接到您的服务器

  • 执行python manage.py runserver

  • 同时打开另一个ssh会话

  • 在新的ssh中执行lynx localhost:8000

  • 然后,您将能够在第二个ssh中看到来自django的日志和调试信息