0
我对golang相当陌生,并且发现自己对一个简单的文件服务程序感到沮丧。我怀疑我的路由器r的处理程序中的文件前缀/目录有问题。我已经尝试了许多不同的目录格式。我想要的服务的HTML文件是$ HOME/Documents/TEST/Login在我的系统上。下面是我的代码,注意{address}
代替了这个ip地址。404使用大猩猩/多路复用golang库时出错
package main
import (
"log"
"github.com/gorilla/mux"
"net/http"
"time"
)
func main() {
r := mux.NewRouter()
r.PathPrefix("/Login/").Handler(http.StripPrefix("/Login/",
http.FileServer(http.Dir("$HOME/Documents/TEST/Login"))))
srv := &http.Server{
Handler: r,
Addr: "{address}:9999",
WriteTimeout: 600 * time.Second,
ReadTimeout: 600 * time.Second,
}
log.Fatal(srv.ListenAndServe())
}
好像修复了404错误,我还必须将“/ Login /”前缀更改为“/” – Clarko
如果您不喜欢绝对路径,请使用'currentUser.HomeDir'来获取主路径。请访问https://golang.org/pkg/os/user/#User – lowatt