在AWS上使用Flask部署简单服务器

时间:2017-04-12 06:20:10

标签: python amazon-web-services flask

我正在使用此Python代码来查看我是否可以查看简单的AWS服务器,但是我仍然无法正确加载网页。

from flask import Flask

app = Flask(__name__)

@app.route('/')
def index():
    return "It works!"

if __name__ == '__main__':
    app.run(port=80, host='0.0.0.0')

在AWS中,入站:

HTTP TCP port 80 with a source of: 0.0.0.0/0
SSH TCP port 22 with a source of: 0.0.0.0/0

出境 - 一切都被允许。

我在启动程序时看到终端没有错误。控制台说Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)所以我正在尝试加载http://ubuntu@ec2-IPADDRESS.compute-1.amazonaws.com:5000

2 个答案:

答案 0 :(得分:0)

Flask defaults to binding to 127.0.0.1:5000

如果您尝试访问http://ubuntu@ec2-IPADDRESS.compute-1.amazonaws.com:5000,则需要在入站防火墙规则中打开端口5000并绑定到0.0.0.0而不是127.0.0.1。

答案 1 :(得分:0)

您不能将端口80用于Web应用程序。让它在默认端口上运行,然后通过mod_wsgi或uWSGI托管您的Web应用程序...在此处检查部署选项:http://flask.pocoo.org/docs/0.12/deploying/

Imo:如果您在AWS Elastic Beanstalk上部署应用程序,效果会更好。如果你需要一个示例项目,请给我一个喊叫。