zoukankan      html  css  js  c++  java
  • springboot添加https

    一、使用JDK工具keytool生成证书

    keytool命令详解 https://blog.csdn.net/zlfing/article/details/77648430

    keytool -genkey -alias tomcat -keypass password -storetype PKCS12 -keyalg RSA -keysize 2048 -validity 3650 -keystore keystore.p12 -storepass password -dname "CN=(AMS), OU=(National Innovation Institute of Additive Manufacturing), O=(National Innovation Institute of Additive Manufacturing), L=(Xian), ST=(Shanxi), C=(CN)"

    二、将生成的文件copy到src下

    三、配置yml文件

    server:
    #https 端口 port:
    8443 ssl: key-store: classpath:keystore.p12 key-store-password: password keyStoreType: PKCS12 keyAlias: tomcat
    #http端口 http: port:
    7000

    四、重定向http到https

    在配置类中加入

       /**
         * http auto to https
         * 
         * @return
         */
        @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;
        }
    
        public Connector httpConnector()
        {
            Connector connector = new Connector("org.apache.coyote.http11.Http11NioProtocol");
            connector.setScheme("http");
            connector.setPort(7000);//http端口重定向到https端口
            connector.setSecure(false);
            connector.setRedirectPort(8443);
            return connector;
        }
  • 相关阅读:
    客户(项目)经理应具备那些基本心理素质
    js 添加数组 删除数组
    c# ifram 刷新父页面
    [转].Net ajax检测用户名是否重复
    js 自动执行方法
    js 层 分页显示选择用户名
    c# Cookie的操作
    c# 取IE地址值
    js 弹出层无刷新分页
    iframe 无边框
  • 原文地址:https://www.cnblogs.com/zincredible/p/9387706.html
Copyright © 2011-2022 走看看