vue项目到正式环境后,只能访问根目录,子路径都404

已部署到服务器上

如访问www.xxxxx.com可以,也能正常跳转至任意子路径如www.xxxxx.com/login

但如果直接访问www.xxxxx.com/login就会404

用的nginx

感谢解答!

路由模式是history,需要配置 🔽, 交给你的vue去处理

location / {
  try_files $uri $uri/ /index.html;
}

如果对您有帮助,希望你可以点赞 + 采纳,这是对我最大的鼓励

这个和前端关系不大吧

因为 vue 是单页应用,
如访问www.xxxxx.com可以,也能正常跳转至任意子路径如www.xxxxx.com/login ,这是因为 从首页到 login 页是通过 js 操作跳过去的。你要让ng 把所有的跳转指给index.html,让 vue 去处理。
直接访问404,是因为对ng而言 你/login 这个资源并没有部署,他找不到。搜 404 

这不采纳一波?

如果对您有帮助,希望你可以点赞 + 采纳,这是对我最大的鼓励