我不是Web编程专家,对此了解甚少。我正在尝试在EC2实例(Windows Server 2012R2)上运行Web服务,并且该Web服务是使用Flask包以Python编写的。我可以从本地主机连接到我的Web服务。但我想要做的就是把它从一个远程系统,这是连接不是在同一个网络上。
我从此链接中学到了,更改线路为app.run(host='0.0.0.0')
将使SAME网络上的所有设备都可以连接到我的Web服务。但是就像我说的,我想从一个系统,是连接不上的同一网络。如何在Flask中做到这一点?另外我还没有安装Apache。这是运行Web服务所必需的吗?
任何建议都会非常有帮助。非常感谢。
设A为您要连接的服务器。设B为您要连接的服务器,据我收集,该服务器有时为localhost。
以下是EC2特定的:您必须打开与特定IP的连接。检查您实例的安全设置。如果您向EC2实例添加了安全组,请向其添加IP或服务器IP。否则,请确保将B的IP列入白名单。
我不能完全确定这是您想要的,但是如果每个人都可以访问A,则应该在port上运行Flask应用程序8000
。如果只有B(可能还有您的本地主机)应该能够访问A,则忽略此段...
毫无疑问,是的。顺便说一句,这也是您应该指向的IP,以便其他服务器也可以连接。因此,在您的情况下,也请指向0.0.0.0
。
不,Apache是没有必要的。您可以根据需要持久保存Flask开发服务器。(又名,您可以使用python run.py
该进程并只为“ Web服务”运行该进程)。在这种情况下,您不需要Apache即可完成这项工作。从长远来看,您将希望Apache或Nginx运行您的Web服务。
这是您可以用来通过Python进行Apache2设置的教程。只需忽略MySQL部分:https : //www.digitalocean.com/community/tutorials/how-to-set-up-an-apache-mysql-and-python-lamp-server-without-frameworks-on-ubuntu- 14-04
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句