Golang Web服务器

3qpi33ja  于 2023-09-28  发布在  Go
关注(0)|答案(2)|浏览(112)

我知道Golang包含本地内置的Web服务器(net/http),可以用作服务器,而无需使用外部Web服务器(apache,nginx等)。对于本地开发,只需运行http.ListenAndServe,服务器就可以在本地就绪。
我的问题是,如何设置你的Golang应用程序,让其他人公开访问,而不需要外部Web服务器?

mklgxw1f

mklgxw1f1#

在你的golang代码中,除了指定你的应用监听的端口,你不需要做任何其他事情。设置端口(例如:8080)后,您需要执行以下操作以使其可访问:

  • 如果您希望您的应用可在内部(LAN/WLAN)访问,请检查您的私有IP地址,然后从内部网络中的任何其他设备访问它。例如,您的私有IP是10.50.50.10,然后使用应用程序中指定的端口访问它:10.50.50.10:8080
  • 如果您希望您的应用可公开访问(WAN),请检查您的公共IP。首先,您需要确保您的应用程序正在使用的端口进行侦听。设置您的防火墙,让端口开放供公众访问。然后您必须转发路由器中的端口。端口转发是为了让任何对您的公共IP和您设置的特定端口的请求转发到您的设备的IP(私有IP)和您的应用程序侦听的端口。搜索您使用的特定操作系统和路由器的端口转发以获取更多信息。
ehxuflar

ehxuflar2#

您不需要更改应用程序的任何内容,只需打开服务器防火墙中的端口,并将http.ListenAndServe中的IP更改为0.0.0.0(或完全释放),例如:http.ListenAndServe(":80")

相关问题