无法在Dreamhost共享主机上使用Passenger WSGI运行Flask

时间:2012-04-30 15:46:22

标签: python passenger flask shared dreamhost

我正在尝试使用instructions on their wiki在Dreamhost共享服务器上运行Flask“hello world”应用程序,但我没有运气。

My Flask应用程序是Flask quickstart guide中的“hello world”:

from flask import Flask
app = Flask(__name__)

@app.route('/')
def hello_world():
    return 'Hello World!'

if __name__ == '__main__':
    app.run()

根据DH维基说明,我在名为mysite的文件夹中有一个名为“hello.py”的文件。我的passenger_wsgi.py文件是:

import sys, os
INTERP = os.path.join(os.environ['HOME'], 'flask_env', 'bin', 'python')
if sys.executable != INTERP:
    os.execl(INTERP, INTERP, *sys.argv)
sys.path.append(os.getcwd())
from mysite import hello as application

我已经尝试在Python控制台中运行命令,并且在我将__init__.py文件添加到mysite目录之前,最后一次导入行失败了。

当我尝试访问网站时,我只收到500错误(遗憾的是,日志中没有任何内容,除非它们在日志中我无法访问,因为这是共享服务器...)。

由于这是最基本的设置(即,从维基中复制和粘贴),我不禁感到我错过了一些非常简单的东西。或者这可能在共享服务器上无法实现?

1 个答案:

答案 0 :(得分:19)

回答我自己的问题意味着我在跟自己说话吗?

无论如何 - 我似乎修好了它。我没有找到一个很好的有用的错误消息,而是一次又一次地执行了所有步骤,结果发现这是passenger_wsgi.py文件中的导入错误。由于应用位于mysite子目录中,因此行:

from mysite import hello as application

应该(事实上,现在是):

from mysite.hello import app as application

它有效。哪个好。