从另一台计算机连接到在 Amazon EC2 上的 localhost 上运行的 Web 应用程序
Posted
技术标签:
【中文标题】从另一台计算机连接到在 Amazon EC2 上的 localhost 上运行的 Web 应用程序【英文标题】:Connecting to web app running on localhost on an Amazon EC2 from another computer 【发布时间】:2015-11-12 10:42:48 【问题描述】:目前我正在开发一个 Web 应用程序,并且我在 Amazon ec2 实例上运行我的服务器。我通过像往常一样在 localhost:5000 上运行服务器来测试我的(使用 Flask 的 Web 应用程序)。但是我无权访问 gui,因此我看不到我的应用程序并像在浏览器上那样对其进行测试。我有一台 Mac OS X 计算机,所以我的问题是如何从我的 mac 浏览器查看 Amazon EC2 的本地主机?
【问题讨论】:
你看过this answer吗? 您如何与您的 EC2 实例在同一个网络上?您在亚马逊的数据中心内吗? 哎呀,我的意思是别的。无论如何,我更新了问题。 【参考方案1】:您无法连接到远程计算机上的本地主机没有代理。如果您想测试它,您需要将绑定更改为公共 IP 地址或0.0.0.0
。
然后,您必须通过 AWS 中的安全设置锁定对您自己的 IP 地址的访问。
【讨论】:
【参考方案2】:您需要告诉 Flask Dev 网络服务器在 0.0.0.0
而不是 localhost
上运行。
您在调用.run()
函数时指定此选项:
app.run(host='0.0.0.0', debug=True, port=5000)
如果您随后在端口 5000 上向您的 EC2 实例的公共 IP 发送请求,您将访问您的 Flask Dev 网络服务器。
例如:http://EC2_IP:5000/
希望这会有所帮助:)
【讨论】:
您可能需要创建一个安全组设置,然后将其应用于 ec2 实例才能使其正常工作。另外,如果您是从终端运行它,请输入 flask run --help 以熟悉或 flask run -h 0.0.0.0 -p 5000以上是关于从另一台计算机连接到在 Amazon EC2 上的 localhost 上运行的 Web 应用程序的主要内容,如果未能解决你的问题,请参考以下文章