zoukankan      html  css  js  c++  java
  • SpringBoot配置SSL证书

    1.将文件放入resources文件夹下

    2.配置application文件

    这样配置启动就是https请求才能访问了,如果不设置端口号默认端口号为443 (截图的时候我将ssl证书给关闭了,要开启记得enable设为true)

    3.错误Caused by: java.io.IOException: Invalid keystore format

        在配置完SSL证书的配置后我启动一直在报Caused by: java.io.IOException: Invalid keystore format错误

        这个错误是因为maven编译了我们的加密文件需要在pom文件加上 

         <!--解决增加ssl证书报Invalid keystore format问题-->
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-resources-plugin</artifactId>
                    <configuration>
                        <nonFilteredFileExtensions>
                            <!--这里是文件后缀-->
                            <nonFilteredFileExtension>pfx</nonFilteredFileExtension>
                        </nonFilteredFileExtensions>
                    </configuration>
                </plugin>

    4.设置http请求转https

    @Configuration
    public class MonitorConfig {
        @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;
        }
    
    
        private Connector createTomcatConnector() {
            Connector connector = new Connector("org.apache.coyote.http11.Http11NioProtocol");
            connector.setScheme("http");
            connector.setPort(8083);
            connector.setSecure(false);
            connector.setRedirectPort(8096);
            return connector;
        }

     

        在网页访问

        

         执行后,被重定向到https的端口了,因为我这个是本地启动的项目所以显示不安全

          

      

      部署到服务器上后要用域名访问

  • 相关阅读:
    POJ 2251 Dungeon Master
    POJ1321棋盘问题
    CODE[VS] 1003 电话连线
    CCF-201412-1-门禁系统
    CCF-201412-2-Z字形扫描
    为什么要用补码
    CCF-201409-1-相邻数对
    CCF-201409-2-画图
    CCF-201403-1-相反数
    CCF-201403-2-窗口
  • 原文地址:https://www.cnblogs.com/HQ0422/p/14109914.html
Copyright © 2011-2022 走看看