Python Flask应用程序在Heroku上失败:没有名为app的模块
我有一个已部署到Heroku的Flask应用程序,但出现了一个错误:Python Flask应用程序在Heroku上失败:没有名为app的模块,python,heroku,flask,Python,Heroku,Flask,我有一个已部署到Heroku的Flask应用程序,但出现了一个错误: 2018-08-27T12:39:32.197715+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/" host=heroku-seb-test.herokuapp.com request_id=3e02d494-1a3f-4467-9eaa-aaa551b4ca03 fwd="91.143.113.54" dyno=
2018-08-27T12:39:32.197715+00:00 heroku[router]: at=error code=H10 desc="App crashed" method=GET path="/" host=heroku-seb-test.herokuapp.com request_id=3e02d494-1a3f-4467-9eaa-aaa551b4ca03 fwd="91.143.113.54" dyno= connect= service= status=503 bytes= protocol=https
这似乎是我的Flask应用程序结构中的一个错误,因为它上面抛出了一个Python/Flask异常:
File "/app/.heroku/python/lib/python2.7/site-
packages/gunicorn/util.py", line 357, in import_app
__import__(module)
ImportError: No module named app
以下是我的文件夹结构:
- 对开本
- routes.py
- (Procfile和其他依赖项)
- 静止的
- css
- js
- 图像
- 解放党
- 模板
- index.html
- 文夫
routes.py
文件:
from flask import Flask
from flask import render_template, request, flash, session, url_for,
redirect
app = Flask(__name__)
@app.route('/')
def index():
return render_template('index.html')
app.run(debug=True)
这是我的程序文件
:
web: gunicorn app:app
Procfile
告诉Heroku如何运行应用程序<代码>gunicorn确定它应该运行的东西
今天,您告诉它您的应用程序位于名为app
的模块中名为app
的变量中:
web: gunicorn app:app
但是您的模块不是名为app
,而是名为routes
(文件是routes.py
)。更新Procfile
以指向正确的对象:
web: gunicorn routes:app
做出改变,并推动Heroku去看看它的效果。(或者您可以使用在本地试用。)程序文件告诉Heroku如何运行您的应用程序<代码>gunicorn确定它应该运行的东西 今天,您告诉它您的应用程序位于名为
app
的模块中名为app
的变量中:
web: gunicorn app:app
但是您的模块不是名为app
,而是名为routes
(文件是routes.py
)。更新Procfile
以指向正确的对象:
web: gunicorn routes:app
做出改变,并推动Heroku去看看它的效果。(或者您可以使用在本地进行尝试。)我这样做了,得到的错误是:[Errno 98]地址已经在我的heroku上使用了server@baileyhaldwin,那是另一个错误。你不能绑定到Heroku上你想要的任何端口。相反,您应该使用该端口。如果您在这方面有问题,请搜索更多资源,如果没有帮助,请随时提出其他问题。您可以执行文件夹。app:app If app.py在某个文件夹中吗?@makewhite,这是一种很容易自己尝试的事情。你试过了吗?@Chris是的,而且很有效。如果你熟悉heroku和flask,你介意看看我的问题吗?我这样做了,得到的错误是:[Errno 98]地址已经在我的heroku上使用了server@baileyhaldwin,那是另一个错误。你不能绑定到Heroku上你想要的任何端口。相反,您应该使用该端口。如果您在这方面有问题,请搜索更多资源,如果没有帮助,请随时提出其他问题。您可以执行文件夹。app:app If app.py在某个文件夹中吗?@makewhite,这是一种很容易自己尝试的事情。你试过了吗?@Chris是的,而且很有效。如果你熟悉heroku和flask,你介意看看我的问题吗?