我是GCP环境的新手,并试图创建go在VM上运行。外部IP是35.247.137.122。
下面是执行代码,给出了响应code:200, message: "OK"
package main
import (
"encoding/json"
"fmt"
"net/http"
)
func main() {
fmt.Println("ready to dig in...")
http.HandleFunc("/", handle)
fmt.Println(http.ListenAndServe(":8989", nil))
}
func handle(w http.ResponseWriter, r *http.Request) {
w.Header().Set("Content-Type", "application/json")
m, _ := json.Marshal(struct {
Code int
Message string
}{
Code: 200,
Message: "OK",
})
w.WriteHeader(http.StatusOK)
w.Write([]byte(m))
}
对于外部测试,请设置防火墙规则,但是访问external时我仍然超时 任何愿意告诉我如何解决问题的人 谢谢。
nb:我已经安装了nginx,因此访问外部IP会进入nginx home,但是我试图在没有来自nginx的代理传递的情况下访问go代码。
答案 0 :(得分:0)
您要做的正是实现您所要求的东西。 我已经尝试过完全复制您的内容,并且从服务器在外部IP上给定的端口上收到了200 OK。
可能这是暂时的问题,或者还有另一条防火墙规则阻止了您需要的一条规则。尝试降低“优先级”数字,以提高规则的优先级。