import org.apache.catalina.Context;
import org.apache.catalina.connector.Connector;
import org.apache.tomcat.util.descriptor.web.SecurityCollection;
import org.apache.tomcat.util.descriptor.web.SecurityConstraint;
import org.springframework.boot.web.embedded.tomcat.TomcatServletWebServerFactory;
/**
* SSLConfig, http请求自动跳转到对应https请求
*/
// 工程端口需要修改为443或者在nginx将443端口映射为工程端口。
@Configuration
public class HttpAdapterConfig
{
@Bean
public TomcatServletWebServerFactory servletContainer()
{
TomcatServletWebServerFactory tomcatServletWebServerFactory = new TomcatServletWebServerFactory() {
@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);
}
};
Connector connector = new Connector("org.apache.coyote.http11.Http11NioProtocol");
connector.setScheme("http");
connector.setPort(80);
connector.setSecure(false);
connector.setRedirectPort(443);
tomcatServletWebServerFactory.addAdditionalTomcatConnectors(connector);
return tomcatServletWebServerFactory;
}
}
http请求自动跳转到对应https请求
于 2021-02-26 11:00:07 首次发布
博客可能围绕Java和HTTPS在Web领域的应用展开,但因内容缺失,具体信息不明。Java是常用后端开发语言,HTTPS保障网络通信安全,二者结合在Web开发中有重要意义。
3982

被折叠的 条评论
为什么被折叠?



