springboot服务或者gateway网关将http改为https

1.去阿里云服务器,搜索ssl证书,免费申请
2.下载证书springboot服务或者gateway网关将http改为https_第1张图片

因为是springboot服务,所以使用Tomcat或者JKS(JDK支持的类型)

3.配置

server:
    ssl:
        enable: true
        key-store: classpath: 自定义ssl证书文件
        key-store-type: PKCS12
        key-store-password: 阿里云下载证书对应密码

4.证书放在resources目录下,maven打包是会报异常.com.pfx failed with MalformedInputException: Input length = 1

两种方式

4.1 使用 maven-resources-plugin 进行过滤
            
                org.apache.maven.plugins
                maven-resources-plugin
                
                    
                    
                        jks(或者pfx)
                    
                
            
4.2 使用 resources 进行过滤
        
            
            //将资源文件中的除了后缀为 jks(或者pfx) 的其他文件打包到classpath下,对文件做处理
                src/main/resources
                true
                
                    *.jks(或者pfx)
                
            

            
            //将资源文件中后缀为 jks(或者pfx) 的文件打包到classpath,但不对文件做处理
                src/main/resources
                false
                
                    *.jks(或者pfx)
                
            
        

5.如果是gateway服务需要设置后台微服务访问方式

因为进来时是https请求,在gateway转发给其他微服务时依然是https请求,这时可通过将其他服务也设置成https访问,即每个服务都进行配置ssl,同时采用域名进行注册服务,比较麻烦,改为转发时为http服务

spring:
  cloud:
    gateway:
      routes: #配置路由路径
        - id: xx-server
          # 之前路由为 uri: lb://xx-server
          uri: lb:http://xx-server

你可能感兴趣的:(http,https,网络协议)