目录树:
.
├── main.go
└── web
├── app.go
└── views
├── index.html
└── js
└── app.jsx
这有效:
package main
import (
"net/http"
)
func main() {
http.Handle("/", http.FileServer(http.Dir("./web/views")))
http.ListenAndServe(":3000", nil)
}
但这会返回404 page not found
:
main.go:
package main
import (
"{dir with main.go}/web"
)
func main() {
web.StartHttp()
}
应用程序.go:
package web
import (
"fmt"
"net/http"
)
func StartHttp() {
fmt.Println("STARTHTTP - CHECK 01")
http.Handle("/", http.FileServer(http.Dir("./views")))
http.ListenAndServe(":3000", nil)
}
终端打印STARTHTTP - CHECK 01
,因此StartHttp()
调用了该函数,并且终端要求允许传入网络连接,因此 http 服务器似乎正在侦听该端口。
是否有某种类型的上下文没有传递给另一个包?