Spring cloud 如何配置SpringCloud Eureka实例在非标准端口上指向https

Spring cloud 如何配置SpringCloud Eureka实例在非标准端口上指向https,spring-cloud,netflix-eureka,Spring Cloud,Netflix Eureka,我使用带执行器的Spring boot/cloud,我用@EnableEurekClient注释应用程序类,应用程序启动并正确注册到Eureka服务器 但是,由于我将应用程序配置为在https和端口8444上运行, Eureka实例未使用正确的协议注册,而是使用http 我举了一个例子 http://localhost:8444/ http://localhost:8444/info http://localhost:8444/health 没有secureHomePageUrl或secureS

我使用带执行器的Spring boot/cloud,我用@EnableEurekClient注释应用程序类,应用程序启动并正确注册到Eureka服务器

但是,由于我将应用程序配置为在https和端口8444上运行, Eureka实例未使用正确的协议注册,而是使用http

我举了一个例子

http://localhost:8444/
http://localhost:8444/info
http://localhost:8444/health

没有
secureHomePageUrl
secureStatusPageUrl
这样的东西-只有
secureHealthCheckUrl
存在。查看
com.netflix.appinfo.EurekaInstanceConfig
,了解在Eureka客户端注册时实际传输到服务器的属性

但是,主页/状态/健康页面URL不显示HTTPS协议并不意味着您的实例没有正确注册。重要的是是否启用了安全端口。在客户端配置中检查以下属性:

eureka.instance.securePort: 443
eureka.instance.securePortEnabled: true
从中获得的注册表信息应反映这些值


您应该记住,Eureka或Ribbon都不使用
homePageUrl
statusPageUrl
。它们显然只是为了提供信息而提供的。但是,一些负载平衡规则或其他健康报告系统可能会使用
healthCheckUrl
secureHealthCheckUrl
。这可能就是为什么存在该属性的“安全”版本,但不适用于其他…

是否使用set
eureka.instance.securePortEnabled=true
?我阅读了NetFlix代码,其中eureka实例硬编码为http,除非显式绝对Url设置为eureka.instance.status-page-Url
eureka.instance.securePort: 443
eureka.instance.securePortEnabled: true