vue构建后dist目录交gin托管需用router.staticfs("/static", http.dir("./frontend/dist"))挂载,并配router.noroute兜底返回index.html,确保history路由刷新不404;静态压缩与缓存应由nginx处理,gin仅负责api。

Vue构建后,dist目录怎么交给Gin托管?
直接把 dist 目录扔进Gin项目里,用 fs.FileServer 或 gin.StaticFS 暴露就行,但必须注意路径拼接和路由兜底——否则刷新页面 404。
- 推荐做法:在Gin启动前,用
http.Dir指向绝对路径,比如http.Dir("./frontend/dist");别用相对路径,部署时容易错位 - 关键配置:在
router.StaticFS("/static", http.Dir("./frontend/dist"))之后,加一条兜底路由:router.NoRoute(func(c *gin.Context) { c.File("./frontend/dist/index.html") }) - 如果Vue用了
history模式(默认),NoRoute这一步不能省;否则访问/user/123就会 404 - 别用
router.LoadHTMLFiles或HTMLRender,那是给服务端模板用的,和Vue的前端路由冲突
Gin要不要自己处理静态资源压缩和缓存?
不建议。Gin不是Nginx,它没内置Gzip流式压缩、ETag生成或强缓存策略,硬加中间件反而拖慢吞吐量,还容易配错。
vue-composition-api-best-practices
Vue 3 组合式 API 与
热门下载
相关下载
精品课程
相关推荐
/
热门推荐
/
最新课程
最新文章
