我有以下代码:
r := mux.NewRouter()
r.Handle("/", http.FileServer(http.Dir("./frontend/build/")))
r.Handle("/static", http.FileServer(http.Dir("./frontend/build/static/")))
r.PathPrefix("/api").Handler(auth)
/api
应该是安全的。如果用户点击 /
,我希望他们查看 index.html
目录中的 PROJECTDIR/frontend
。
前端目录看起来像
frontend
/build
index.html
/static
/js
/css
/media
index.html 加载来自
/static
的所有内容。无论我如何配置,当我访问 localhost:3000
时,我可以获得 index.html
但 /static
下的所有内容都是 404'd。
我的配置是否错误?
假设您想要在端点 /static 上提供目录“static”的全部内容,并且您正在运行 bsd/linux 机器,则以下语法应该有效:
http.Handle("/static/", http.StripPrefix("/static/", http.FileServer(http.Dir("./static"))))
试试这个
http.Handle("GET /logs/{path...}", http.StripPrefix("/logs", http.FileServer(http.Dir(logDir))))