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的端口了,因为我这个是本地启动的项目所以显示不安全

          

      

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

  • 相关阅读:
    CSS魔法堂:重拾Border之——更广阔的遐想
    CSS魔法堂:重拾Border之——不仅仅是圆角
    CSS魔法堂:重拾Border之——图片作边框
    CSS魔法堂:重拾Border之——解构Border
    CSS3魔法堂:说说Multi-column Layout
    CSS魔法堂:"那不是bug,是你不懂我!" by inline-block
    CSS魔法堂:小结一下Box Model与Positioning Scheme
    CSS魔法堂:说说Float那个被埋没的志向
    CSS魔法堂:你一定误解过的Normal flow
    CSS魔法堂:Absolute Positioning就这个样
  • 原文地址:https://www.cnblogs.com/HQ0422/p/14109914.html
Copyright © 2011-2022 走看看