gpt4 book ai didi

python - Dreamhost 上的 Flask Passenger WSGI

转载 作者:行者123 更新时间:2023-12-01 05:40:06 25 4
gpt4 key购买 nike

首先,我按照 Matt Carrier 博客上的教程中的说明进行操作(尽管假设我会在我的域上创建一个子目录,但实际上我没有)。然后我删除了所有内容并按照 Dreamhost wiki 页面上有关 Flask 的说明重新开始。每次,我都会在浏览器中收到一条消息:“导入您的passenger_wsgi.py时发生错误”。 answer for this topic on StackOverflow不适合我。

我的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 flask import Flask
application = Flask(__name__)

sys.path.append('penguicon-trax')
from penguicon-trax.penguicontrax import app as application
penguicon-trax 是当我将应用程序克隆到安装 Flask 的 virtualenv 时 Git 创建的目录名称(不在公共(public)目录中)。该应用程序是不带破折号的 penguicontrax.py。

我确保passenger_wsgi.py第四行的缩进是制表符,而不是空格。

我使用 DreamHost webpanel(完全托管的地方)创建/home/username/flask_env/public,并标记了“Passenger(仅限 Ruby/Python 应用程序)”复选框,然后单击“更改设置”按钮。

我直接通过 FTP 将 Passenger_wsgi.py 传输到 Dreamhost 上的 Flask_env 目录中。当我通过 SSH 连接到 Dreamhost 时,命令行上的 ls 会给出:

bin  lib            passenger_wsgi.pyc  public
include passenger_wsgi.py penguicon-trax

当我通过 SSH 运行 Passenger_wsgi.py 时,它会给出:

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”并运行它时,它会给出“ImportError:没有名为 penguicontrax 的模块”。

如果我将该行更改为“from penguicontrax import app as application”并通过 SSH 运行它,它不会给我任何错误消息或其他输出。然而,我的域名现在给出了 404。

你能告诉我我做错了什么吗?

最佳答案

如果您的passenger_wsgi.py末尾有以下代码:

from foo.bar import app as application

...那么您需要一个名为“foo”的子目录,其中包含两个文件:一个名为 bar.py 的文件和另一个名为 __init__.py 的文件以便 Python 识别该目录包含模块代码。

在您的示例中,从文件夹名称 (penguicon-trax) 中删除破折号,因为 modules should have short, all-lowercase names 。然后,你的Flask application code将位于 $HOME/flask_env/penguicontrax/penguicontrax.py 中的文件中最后,运行以下命令进行尝试:

touch $HOME/flask_env/penguicontrax/__init__.py
python $HOME/flask_env/passenger_wsgi.py

关于python - Dreamhost 上的 Flask Passenger WSGI,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17778894/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com