Python Can';t访问烧瓶应用程序在GCE上的0.0.0.0上运行

Python Can';t访问烧瓶应用程序在GCE上的0.0.0.0上运行,python,flask,google-compute-engine,Python,Flask,Google Compute Engine,我在主机“0.0.0.0”和端口7000为本地google compute实例设置防火墙规则 我执行了pythonserver.py,它在https://0.0.0.0:7000 但是当我输入https://external-ip:7000在我的本地浏览器上,它不起作用 那么,我如何在谷歌计算引擎上运行flask并在本地计算机浏览器中打开它呢 server.py from flask import Flask app = Flask(__name__) @app.route('/') def

我在主机“0.0.0.0”和端口7000为本地google compute实例设置防火墙规则

我执行了
pythonserver.py
,它在
https://0.0.0.0:7000
但是当我输入
https://external-ip:7000
在我的本地浏览器上,它不起作用

那么,我如何在谷歌计算引擎上运行flask并在本地计算机浏览器中打开它呢

server.py

from flask import Flask
app = Flask(__name__)

@app.route('/')
def hello_world():
   return 'Hello World’

if __name__ == '__main__':
   app.run(debug=1,port=7000,host='0.0.0.0')
有几件事:

检查您的VPC防火墙:

在终端中,通过发出以下命令查看连接是否在该主机上本地工作:

telnet localhost 7000
如果它连接,那么它要么是防火墙,要么是下面的

如果您在https上运行,您可能需要具备以下内容:

context = ('host.crt', 'host.key')
app.run(host='0.0.0.0',port='7000', ssl_context=context)

最后,它是https://not\

当我在本地主机上尝试telnet时,它说“连接到本地主机…无法打开到主机的连接,在端口7000上:连接失败”。它可能与iptables相关,您需要添加iptables规则以允许该端口上的流量
sudo iptables-A INPUT-p tcp-dport 7000-m conntrack-ctstate NEW,builded-j ACCEPT
sudo iptables-A OUTPUT-p tcp-sport 7000-m conntrack-ctstate builded-j ACCEPT