boot https ssl 使用http协议访问报错

在springboot中配置ssl以后, 再次使用http访问对应的接口就会报错

可以考虑如下设置,将http访问的端口重定向到https对应的端口

java 复制代码
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;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;

@Configuration
public class TomcatConfig {
    @Bean
    TomcatServletWebServerFactory tomcatServletWebServerFactory() {
        TomcatServletWebServerFactory factory = 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);
            }
        };
        factory.addAdditionalTomcatConnectors(createTomcatConnector());
        return factory;
    }
    // 8080 -> 重定向到8843端口
    private Connector createTomcatConnector() {
        Connector connector = new Connector("org.apache.coyote.http11.Http11NioProtocol");
        connector.setScheme("http");
        connector.setPort(8080);
        connector.setSecure(false);
        connector.setRedirectPort(8443);
        return connector;
    }
}
相关推荐
毕设源码-邱学长19 小时前
【开题答辩全过程】以 校园博客系统 为例,包含答辩的问题和答案
java
毕设源码-赖学姐19 小时前
【开题答辩全过程】以 小学体育用品管理系统为例,包含答辩的问题和答案
java
SimonKing19 小时前
GitHub热榜1k星影视壳(OuonnkiTV)遇上AI影视源
java·后端·程序员
创梦流浪人19 小时前
Soli Admin:面向复杂业务场景的模块化企业后台基础平台
java·erp·后台管理系统
程序员侠客行19 小时前
Tomcat 网络I/O模型浅析
java·tomcat·web
一直都在57219 小时前
AQS详解
java·开发语言
sheji341619 小时前
【开题答辩全过程】以 校园帮系统为例,包含答辩的问题和答案
java·spring boot
koping_wu19 小时前
【Java并发】CompletableFuture详解:常用API和底层原理
java·开发语言·python
填满你的记忆19 小时前
《Java 面试常见题型(2026最新版,背完直接能面)》
java·开发语言
小松加哲19 小时前
# Spring Aware 与 BeanPostProcessor:作用、使用与原理(源码级)
java·后端·spring