繁体   English   中英

如何在 AWS Elastic Beanstalk 上配置我的 WSGI 应用程序的名称?

[英]How do I configure the name of my WSGI application on AWS Elastic Beanstalk?

我的 Python Web 应用程序称为app

# example.py
import flask

app = flask.Flask(__name__.split('.')[0])

当我尝试使用 AWS-EB 在 AWS-EB 上启动它时

# run.py (set correctly with WSGIPath)
from example import app

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

我得到

mod_wsgi (pid=22473): Target WSGI script '/opt/python/current/app/run.py' 
    does not contain WSGI application 'application'.

如何告诉 AWS 我的应用程序实例名为app

mod_wsgi 需要名为application变量。 尝试做这样的事情

from example import app as application

注意:不要做application.run() 不需要。

虽然可以配置 WSGIPath。 Beanstalk 仍然希望 app 变量被命名为“application”。

小型单文件 python 应用程序的简单解决方法可以是

from flask import Flask

app = Flask(__name__)
application = app # For beanstalk

您可以保留其余代码原样。 您只需要添加单行application = app

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM