去 http.ListenAndServe dosnt 等待连接看起来正在退出

问题描述 投票:0回答:1

我有一个简单的应用程序,我希望它是等待连接的守护进程 但看起来它不听,我什至在进程列表中找不到它

代码:

package main

import (
        "fmt"
        "log"
        "net/http"
)

func main() {
        fmt.Println("Start Server")
        log.Print("Start Server")
        http.HandleFunc("/", func(w http.ResponseWriter, r *http.Request) {
                fmt.Fprintln(w, "Hello, World! from linux")
        })
        log.Fatal("Going to listen")
        if err := http.ListenAndServe(":80", nil); err != err {
          log.Fatal("getting error")
          log.Fatal(err)
        }
        fmt.Println("End  Server")
        log.Print("End  Server")

}

编译并运行:

xxx@xxx:~/go_test$ CGO_ENABLED=0 go build -gcflags "all=-N -l" -o ./main
xxx@xxx:~/go_test$ ./main
Start Server
2023/11/15 07:25:48 Start Server
2023/11/15 07:25:48 Going to listen

尝试连接:

xxx@xxx:~$ curl http://localhost
curl: (7) Failed to connect to localhost port 80 after 0 ms: Connection refused

我在这里缺少什么?

go httpserver
1个回答
0
投票

log.Fatal("Going to listen")
终止您的应用程序执行。

© www.soinside.com 2019 - 2024. All rights reserved.