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路径一律用小写,转发路径也一律和目录保持一致全部用小写,就不会出现这种问题了。

原文地址:https://www.cnblogs.com/kinome/p/12539707.html