BUG描述: 一般我们在SpringBoot项目开发中都会在配置文件中添加静态资源访问前缀,比如:
spring:
mvc:
static-path-pattern: /res/**
#SpringBoot 4.3
SpringBoot一种配置欢迎页的方法是在静态资源路径下新建index.html。
//官方文档
Spring Boot supports both static and templated welcome
pages. It first looks for an index.html file in the configured static content locations. If one is not found,
it then looks for an index template. If either is found,
it is automatically used as the welcome page of the
application.
在有前缀的情况下添加,采用这种方式添加欢迎页,则欢迎页不生效。
源码分析:
WelcomePageHandlerMapping(TemplateAvailabilityProviders templateAvailabilityProviders,
ApplicationContext applicationContext, Resource welcomePage, String staticPathPattern) {
if (welcomePage != null && "/**".equals(staticPathPattern)) {
logger.info("Adding welcome page: " + welcomePage);
setRootViewName("forward:index.html");
}
else if (welcomeTemplateExists(templateAvailabilityProviders, applicationContext)) {
logger.info("Adding welcome page template: index");
setRootViewName("index");
}
}
SpringBoot底层已经写死了。