Flask应用程序端口拒绝ec2上的连接
我有一个flask应用程序,我正在EC2实例上存储它。应用程序启动正常:Flask应用程序端口拒绝ec2上的连接,flask,amazon-ec2,aws-security-group,Flask,Amazon Ec2,Aws Security Group,我有一个flask应用程序,我正在EC2实例上存储它。应用程序启动正常: ubuntu@ip-something:~/webservices$ python service/texting_service.py * Serving Flask app "texting_service" (lazy loading) * Environment: production WARNING: This is a development server. Do not use it in a p
ubuntu@ip-something:~/webservices$ python service/texting_service.py
* Serving Flask app "texting_service" (lazy loading)
* Environment: production
WARNING: This is a development server. Do not use it in a production deployment.
Use a production WSGI server instead.
* Debug mode: on
* Running on http://127.0.0.1:8080/ (Press CTRL+C to quit)
* Restarting with stat
* Debugger is active!
* Debugger PIN: 146-396-474
当我ssh
进入这个EC2实例并使用localhost
调用服务时,它返回预期的响应。但是,当我尝试使用EC2实例的公共IP地址从EC2实例外部调用此服务时,我看到以下错误:
curl: (7) Failed to connect to ec2.instance.ip.address port 8080: Connection refused
我确认已为连接到此EC2实例的安全组打开入口端口
8080
。我错过了什么?我发现了。如果未在app.run()
函数中传递值为0.0.0
的参数host
,则应用程序在外部不可见。执行以下操作解决了我的问题:
if __name__ == '__main__':
app.run(host='0.0.0.0')
这就是我错过的。谢谢