如何从Go查看是从本地主机还是从外部访问网页?
如何为外部用户禁用某些功能?
如何隐藏整个网站,例如“nope,此处没有任何内容,端口8080关闭,移动”。
答案 0 :(得分:5)
要检查是否从外部访问网站,请检查远程IP地址。如果它不是来自127.0.0.1或:: 1(IPv6)那么它就在外面。使用函数func (*IPConn) RemoteAddr
。
要禁用某些功能,请检查以上条件。
要隐藏整个站点,请仅将服务绑定到localhost接口(127.0.0.1)。
结合
net.Listen("tcp", "localhost:8080")
或
net.Listen("tcp6", "ip6-localhost:8080")
使用http包
http.ListenAndServe("localhost:8080", nil)