首先在配置文件添加
server.ssl.key-store=classpath:xxx.p12(证书)
server.ssl.key-store-password=123456(密码)
server.ssl.key-store-type=PK(加密类型)
server.ssl.key-alias=tomcat(别名)
server.ssl.enabled=true
然后将文件xxx.p12放入resource目录下
1.5版本
@Bean
public EmbeddedServletContainerFactory servletContainer() {
TomcatEmbeddedServletContainerFactory tomcat = new TomcatEmbeddedServletContainerFactory() {
@Override
protected void postProcessContext(Context context) {
SecurityConstraint securityConstraint = new SecurityConstraint();
securityConstraint.setUserConstraint("CONFIDENTIAL");
SecurityCollection collection = new SecurityCollection();
collection.addPattern("/*");
securityConstraint.addCollection(collection);
context.addConstraint(securityConstraint);
}
};
tomcat.addAdditionalTomcatConnectors(httpConnector());
return tomcat;
}
@Bean
public Connector httpConnector() {
Connector connector = new Connector("org.apache.coyote.http11.Http11NioProtocol");
//将http的访问端口重定向到https的访问端口
connector.setScheme("http");
//http的访问端口
connector.setPort(80);
connector.setSecure(false);
//https的访问端口 就是ssl证书的端口 默认是443
connector.setRedirectPort(8888);
return connector;
}
2.0版本
@Bean
public TomcatServletWebServerFactory servletContainer() {
TomcatServletWebServerFactory tomcat = new TomcatServletWebServerFactory() {
@Override
protected void postProcessContext(Context context) {
SecurityConstraint constraint = new SecurityConstraint();
constraint.setUserConstraint("CONFIDENTIAL");
SecurityCollection collection = new SecurityCollection();
collection.addPattern("/*");
constraint.addCollection(collection);
context.addConstraint(constraint);
}
};
tomcat.addAdditionalTomcatConnectors(httpConnector());
return tomcat;
}
@Bean
public Connector httpConnector() {
Connector connector = new Connector("org.apache.coyote.http11.Http11NioProtocol");
//将http的访问端口重定向到https的访问端口
connector.setScheme("http");
//http的访问端口
connector.setPort(80);
connector.setSecure(false);
//https的访问端口 就是ssl证书的端口 默认是443
connector.setRedirectPort(8888);
return connector;
}