首先,我按照Matt Carrier博客上的教程中的说明进行操作(尽管假设我会在我的域上创建一个子目录,而我没有这样做)。然后我删除了所有内容,重新开始阅读Dreamhost wiki页面上关于烧瓶的说明。每次,我都会在浏览器中看到一条消息:“导入您的乘客时出错_wsgi.py". answer for this topic on StackOverflow不适合我。在
我的乘客_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 flask import Flask
application = Flask(__name__)
sys.path.append('penguicon-trax')
from penguicon-trax.penguicontrax import app as application
penguicon trax是Git将我的应用程序克隆到安装了Flask的virtualenv(不在public目录中)时创建的目录名。应用程序是彭桂合同.py没有破折号。在
我确定了第四排乘客的缩进_wsgi.py是个标签,不是空格。在
我使用DreamHost webpanel(我完全托管在那里)将/home/username/flask_env/public设置为/home/username/flask_env/public,并选中“Passenger(仅限Ruby/Python应用程序)”复选框并单击“更改设置”按钮。在
我骗了乘客_wsgi.py直接进入我在Dreamhost上的flask_env目录。当我通过SSH进入Dreamhost时,命令行上的ls给出了:
^{pr2}$当我运行乘客_wsgi.py通过SSH,它给了我:
File "passenger_wsgi.py", line 11
from penguicon-trax.penguicontrax import app as application
^
SyntaxError: invalid syntax
当我使用“from penguicon trax import app as application”时,它也会这样做。在
当我把那行改为删除破折号时:“penguicontrax.penguicontrax.penguicontrax运行它,它会给我“ImportError:没有名为penguicontrax的模块”。在
如果我将这行代码改为“from penguicontrax import app as application”,并通过SSH运行它,它不会给出错误消息或其他输出。但是,我的域名现在给出了404。在
你能告诉我我做错了什么吗?在
如果你的乘客_wsgi.py末尾有以下代码:
。。。然后需要一个名为“foo”的子目录,其中包含两个文件:一个文件名为
bar.py
,另一个文件名为__init__.py
,这样Python就可以识别出该目录包含模块代码。在在您的示例中,从文件夹名(penguicon trax)中删除破折号,因为modules should have short, all-lowercase names。然后,您的Flask application code将位于$HOME/flask_env/penguicontrax中的一个文件中/彭桂合同.py最后,运行以下命令进行测试:
^{pr2}$相关问题 更多 >
编程相关推荐