在Spring Boot中,您可以设置上下文路径3种方式。
首先在application.properties像你一样。
server.contextPath=/myWebApp
二的变化可以编程方式,以及:
import org.springframework.boot.context.embedded.ConfigurableEmbeddedServletContainer;
import org.springframework.boot.context.embedded.EmbeddedServletContainerCustomizer;
import org.springframework.stereotype.Component;
@Component
public class CustomContainer implements EmbeddedServletContainerCustomizer {
@Override
public void customize(ConfigurableEmbeddedServletContainer container) {
container.setPort(8181);
container.setContextPath("/myWebApp ");
}
}
,最后,通过直接传递系统属性:
java -jar -Dserver.contextPath=/myWebApp spring-boot-example-1.0.jar
春季安全配置是:
@Configuration
@EnableWebSecurity
public class WebSecurityConfig extends WebSecurityConfigurerAdapter {
@Override
protected void configure(HttpSecurity http) throws Exception {
http
.csrf().disable()
.authorizeRequests()
.antMatchers("/static/**").permitAll()
.anyRequest().authenticated()
.and()
.formLogin()
.loginPage("/login")
.usernameParameter("username")
.passwordParameter("password")
.loginProcessingUrl("/j_spring_security_check")
.failureUrl("/login?error=true")
.defaultSuccessUrl("/index")
.and()
.logout().logoutUrl("/logout").logoutSuccessUrl("/login")
;
}
}
,没有任何进一步的变化,tomcat会自动开始/myWebApp/login
对这个问题有什么建议?我有同样的问题。 – RaHe