- 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
- 需要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;
// }
}
-
本地不报错发包部署之后由于springboot2.1.9版本内置tomcat9.0.26总是报端口占用
解决方案一: 降低版本springboot <version>2.1.8.RELEASE</version> 解决方案二: 修改Tomcat版本<tomcat.version>9.0.24</tomcat.version>
-
Linux证书安装
4.1 上传证书文件到服务器 /etc/ssl/certs/文件夹中 4.2 执行 ln -s server.crt /etc/ssl/certs/server.crt 4.3 更新 update-ca-trust