华为云服务器安全组开启端口后503
最近刚买了个华为云的服务器,随手用Python写了个Web服务类似下面这样子
#coding:utf-8from http.server import BaseHTTPRequestHandlerfrom http.server import HTTPServerclass MyRequestHandler(BaseHTTPRequestHandler):def do_GET(self):print(self.path)self.send_response(200)self.send_header("Content-type", "text/html;charset=utf-8")self.end_headers()self.wfile.write(bytes("大家好!", "utf8"))def do_POST(self):passif __name__ == "__main__":serve = HTTPServer(("localhost", 8000), MyRequestHandler)serve.serve_forever()
运行之后,用本地电脑怎样都连不上,状态码是503,安全组、防火墙、iptables
都设置了,就是无效,没有用。服务器一点输出都没有,而且在服务器上用wget localhost:8000
是可以正常拿到页面的,有输出。当时我的内心是绝望的,是怀疑人生的
解决方法
把localhost
换成服务器的内网地址就可以了!!!
华为应该是用了不知道什么鬼的内网结构,或许是单纯的设置问题,localhost
不能用来代表本机的ip地址,换成内网地址之后就没问题了