最近在给集群配置https的时候。服务启动访问配置中心的时候报了如下错误:
No subject alternative names matching IP address xxxx found
谷歌了一大堆资料,都是要关闭ssl验证,然而试了一圈后查看源码,config client使用的是restTemplate访问配置中心,config client自己定义了一个restTemplate,无法修改其配置:
ConfigServicePropertySourceLocator.getRemoteEnvironment:
兜兜转转猛然醒悟:configserver可以不开启https。
果断将configserver的eureka.instance.securePortEnabled=true配置删除。
其他服务使用http方式访问配置中心。
其他解决方法:
直接配置配置中心的url:
spring.cloud.config.uri: https://域名:端口
url是数组形式,可以配置多个。然而这是不通过注册中心的方式,显然不太好用。
所以configserver还是老老实实不要开启https