监听 TCP4 而不是 TCP6
Listen on TCP4 not TCP6
我正在使用https://github.com/gin-gonic/gin编写一个http服务
但是当我部署它时,它一直在 tcp6 上部署(根据 netstat)
r := gin.Default()
//none of these are working , It keeps being listed on tcp6
r.Run(":8080")
r.Run("*:8080")
r.Run("0.0.0.0:8080")
文档说明
Run attaches the router to a http.Server and starts listening and serving HTTP requests. It is a shortcut for http.ListenAndServe(addr, router)
您可以使用 http.Server
直接启动服务器,就像 http
包在 ListenAndServe
中一样
server := &http.Server{Handler: r}
l, err := net.Listen("tcp4", addr)
if err != nil {
log.Fatal(err)
}
err = server.Serve(l)
// ...
我正在使用https://github.com/gin-gonic/gin编写一个http服务 但是当我部署它时,它一直在 tcp6 上部署(根据 netstat)
r := gin.Default()
//none of these are working , It keeps being listed on tcp6
r.Run(":8080")
r.Run("*:8080")
r.Run("0.0.0.0:8080")
文档说明
Run attaches the router to a http.Server and starts listening and serving HTTP requests. It is a shortcut for http.ListenAndServe(addr, router)
您可以使用 http.Server
直接启动服务器,就像 http
包在 ListenAndServe
server := &http.Server{Handler: r}
l, err := net.Listen("tcp4", addr)
if err != nil {
log.Fatal(err)
}
err = server.Serve(l)
// ...