[英]How do I set up WSGI in Elastic Beanstalk when running AWS Deep Learning Base AMI (Amazon Linux 2)?
[英]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.