今天偶然需要部署https,就想起了以前部署过,项目是基于Springboot的,直接把以前的配置粘贴过来,因为公司的项目https证书是通用的,并且是泛域名的。配置如下:

#证书路径和名称
server.ssl.key-store=classpath:abc.com.jks
#证书密码
server.ssl.key-store-password=xxxxxx
#证书类型
server.ssl.keyStoreType=JKS
#证书别名,这里需要注意一般是证书名,或者1.具体可以查看
server.ssl.keyAlias=1

 

首先说明上面配置是正常的 

在网上查询有的人解决方案是在pom中加配置,禁止maven改动证书文件。比如:

<resources> <resource> <directory>src/main/resources</directory> <filtering>false</filtering> </resource> </resources> 原文:https://blog.csdn.net/kevin_mails/article/details/84590449
 

这是一种方法,禁止maven改动证书文件,这种方法的前提是证书文件没有改动。万一证书已经被改动了,这种方法无效,网上有人说改变证书格式,重新生成其他格式的证书(我没试过)。

问题找到了,就是证书被修改了,哪怕只是加了一个空格! 其实在编译器里面,比如IDEA,eclipse,有的时候会自动打开证书(以文本格式),后来又保存可能自动加了空格或空行,导致证书格式化异常。仔细看会发现和以前的证书相比就会发现大小不一样了! 其实把以前的证书复制过来就可以了. 在编译器里面不要打开它,未打开的证书前面会有问号图标,或者点击证书会提示以什么方式打开。我们不要打开就行了。

找到问题,解决问题,就是这么简单。