0
点赞
收藏
分享

微信扫一扫

【SpringBoot如何同时支持Http和Https】

静悠 2022-04-13 阅读 64

如果你需要同时支持HTTP和HTTPS这两个协议,就需要把另外一个协议用程序化的方式来配置。
因为通过程序的方式配置HTTP协议更加简单一点,所以,Spring Boot 推荐的做法是把HTTPS 配置在配置文件,具体的配置可以看我的文章《SpringBoot配置Https》

下面示例就是通过程序的方式来额外支持HTTP协议。

@SpringBootApplication
public class JavastackApplication {

	@Bean
	public ServletwebServerFactory servletContainer(){
		TomcatServletwebServerFactory tomcat = new TomcatServletwebServerFactory();
		tomcat.addAdditionalTomcatConnectors(createStandardConnector());
		return tomcat;
	}

	private Connector createStandardConnector() {
		connector connector = new Connector( "org.apache.coyote.http11.Http11NioProtocol");
		connector.setPort(8080);
		return connector;
	}

	public static void main(String[] args) {
		SpringApplication.run(JavastackApplication.class, args);
	}
}

配置好之后启动项目就会看到下面的同时支持两个协议的日志:
Tomcat started on port(s): 8443 (https) 8080 (http)

举报

相关推荐

0 条评论