在Heroku上部署Flask应用程序时出错:无法在“应用程序”中找到属性“应用程序”

时间:2020-04-28 12:34:01

标签: flask heroku web-deployment

我正在尝试在heroku上部署我的非常简单的flask应用程序,但是当我尝试访问heroku应用程序时,它给了我这个错误:An error occurred in the application and your page could not be served. If you are the application owner, check your logs for details.我从终端检查了日志,并说:失败在“应用”中找到属性“应用”

代码

from flask import Flask

app = Flask(__name__)

@app.route('/')
def index():
    return "VatsalayKhobragade.me"

项目结构

*

Procifle

web: gunicorn app:app

Requirements.txt

click==7.1.2
Flask==1.1.2
gunicorn==20.0.4
itsdangerous==1.1.0
Jinja2==2.11.2
MarkupSafe==1.1.1
Werkzeug==1.0.1

请对此提供帮助。我在这里做错了什么??

3 个答案:

答案 0 :(得分:2)

可能可以通过procfile解决:

web: gunicorn app.app:app


尽管为清楚起见,您可能希望将顶级app文件夹重命名为其他名称,然后使用:

web: gunicorn something.app:app

或创建一个包含以下内容的something/__init__.py文件:

from .app import app

然后只需一个带有以下内容的procfile:

web: gunicorn something:app

答案 1 :(得分:0)

我遇到了同样的错误。就我而言,我使用的是APP属性而不是app。 将APP替换为app时,问题已解决。

APP = create_app() # correct one -> use app in all lower case 

if __name__ == '__main__':
    APP.run() # correct one -> use app in all lower case

答案 2 :(得分:0)

您有一个名为 app 的文件夹和一个名为 app.py 的顶级文件,用作应用程序的入口点。

它修复了这个错误,您需要将入口点文件名更改为其他名称,例如 blog.py(或您可能需要的任何其他名称)。

更新您的Procfile

web: gunicorn blog:app

或者,您可以重命名 app 文件夹以避免这种冲突