springboot2添加ssl认证之后部署linux异常

  1. yml 配置文件添加
#启动访问端口
server:
  port: 443   #  8090 443
  tomcat:
    remote-ip-header: x-forward-for
    uri-encoding: UTF-8
    max-threads: 10
    background-processor-delay: 30
  ssl:
    key-store: classpath: ssl-cert.pfx
    key-store-password: 123456
    key-alias: https-cert
    enabled: true   # true false
  1. 需要http访问添加如下代码
/**
 * SpringBoot-Web
 * 多数据源配置(@DS切换数据源,可配置Mapper层或者Service层)
 */
@EnableAsync
@SpringBootApplication
@MapperScan("com.zbscxy.springbootweb.mapper")
public class SpringbootWebApplication {
    
    

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

    @Bean
    public SpringContextHolder springContextHolder() {
    
    
        return new SpringContextHolder();
    }

    /**
     * 解决查询时输入 []{} 符号报错的问题
     */
    @Bean
    public ServletWebServerFactory webServerFactory() {
    
    
        TomcatServletWebServerFactory tomcat = new TomcatServletWebServerFactory();
        tomcat.addConnectorCustomizers(connector -> connector.setProperty("relaxedQueryChars", "[]{}"));
//        tomcat.addAdditionalTomcatConnectors(createStandardConnector()); // 添加http
        return tomcat;
    }

    // 配置http
//    private Connector createStandardConnector() {
    
    
//        Connector connector = new Connector(TomcatServletWebServerFactory.DEFAULT_PROTOCOL);  // "org.apache.coyote.http11.Http11NioProtocol"
//        connector.setProperty("relaxedQueryChars", "[]{}");
//        connector.setScheme("http");
//        connector.setSecure(false);
//        connector.setPort(8080);            // http 端口 8080
//        connector.setRedirectPort(443);     // https端口 server.port 必须一致 443
//        return connector;
//    }
}
  1. 本地不报错发包部署之后由于springboot2.1.9版本内置tomcat9.0.26总是报端口占用

     	解决方案一:  降低版本springboot  <version>2.1.8.RELEASE</version>
     	解决方案二:  修改Tomcat版本<tomcat.version>9.0.24</tomcat.version>
    
  2. Linux证书安装

      4.1 上传证书文件到服务器  /etc/ssl/certs/文件夹中
      4.2  执行   ln -s server.crt  /etc/ssl/certs/server.crt
      4.3  更新 update-ca-trust
    

おすすめ

転載: blog.csdn.net/qq_16771097/article/details/113541088