Springboot2项目配置https并部署到阿里云服务器(W

2019-06-13  本文已影响0人  寻找大海的鱼

一.SSL证书

在阿里云申请免费SSL证书,并下载tomcat版本,解压后会得到两个文件,一个是ca证书(pfx后缀的文件),另一个是ca密码

二.阿里云上配置安全组规则

image.png
image.png

三.代码部分

1.application.properties

server.port = 443
server.ssl.key-store=C:/v1.0/123.com.pfx
server.ssl.key-store-password=你的密码

server.port = 443是https的默认端口
其中server.ssl.key-store的值是ca证书路径
server.ssl.key-store-password是证书密码

2.在springboot启动类里面添加代码

public static void main(String[] args) {
        SpringApplication.run(QbtApplication.class, args);
    }

    @Bean
    public TomcatServletWebServerFactory servletContainer() {
        TomcatServletWebServerFactory tomcat = 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);
            }
        };
        tomcat.addAdditionalTomcatConnectors(httpConnector());
        return tomcat;
    }

    @Bean
    public Connector httpConnector() {
        Connector connector = new Connector("org.apache.coyote.http11.Http11NioProtocol");
        connector.setScheme("http");
        //Connector监听的http的端口号
        connector.setPort(80);
        connector.setSecure(false);
        //监听到http的端口号后转向到的https的端口号
        connector.setRedirectPort(443);
        return connector;
    }

四.测试

发布到阿里云服务器,测试如下


image.png

成功!!!

上一篇下一篇

猜你喜欢

热点阅读