springboot jar webapp 部署linux 的 404 问题
本地跑的好好的,打成jar放centos上跑就404了,各种排查,最后手动测了一下static下的资源,发现能访问,进而又访问了一下html,可以访问!发现原来是转发路径的问题:
@RequestMapping("/login") public ModelAndView login() { return new ModelAndView("redirect:/common/Authorization/authorizationPage.html"); }
这里转发路径里有大写 Authorization ,但是我的目录名为 authorization ,这个在windows下没问题,到linux下就会找不到,因为linux对大小写严格校验。
所以最终原因就是因为目录是小写,但是路径写成了大写,windows下没问题,linux下就找不到了,解决方法就是改成一模一样的小写。
所以以后这种webapp或者nginx这类的web路径一律用小写,转发路径也一律和目录保持一致全部用小写,就不会出现这种问题了。