在Go语言中,你可以使用http.FileServer函数来创建一个文件服务器,并使用http.Dir指定文件根目录。要设置默认页面,你可以使用自定义的http.Handler来处理请求,并在没有明确指定路径时返回默认页面。
下面是一个示例代码:
package main
import (
"net/http"
)
func main() {
fs := http.FileServer(http.Dir("static"))
http.Handle("/", defaultPageHandler(fs))
err := http.ListenAndServe(":8080", nil)
if err != nil {
panic(err)
}
}
func defaultPageHandler(h http.Handler) http.HandlerFunc {
return func(w http.ResponseWriter, r *http.Request) {
if r.URL.Path == "/" {
http.ServeFile(w, r, "static/default.html")
return
}
h.ServeHTTP(w, r)
}
}
在上述代码中,我们首先创建了一个基于静态文件的文件服务器,并将根目录设置为 static 文件夹。然后,我们通过 defaultPageHandler 函数创建了一个自定义的处理器函数,用于检查请求路径是否为根路径 “/ ” ,如果是,则返回名为 default.html 的默认页面;否则,将请求传递给原始的文件服务器处理。
请注意修改相应的目录和端口号以适应你的实际情况。当然,你需要将默认页面 default.html 放置在正确的位置。
希望以上信息对你有所帮助!
内容由零声教学AI助手提供,问题来源于学员提问




