我正在使用带有Actuator的Spring启动/云,并使用@EnableEurekaClient注释Application类,应用程序出现并正确注册到Eureka服务器。
但是,因为我将我的应用程序配置为在https和端口8444上运行, Eureka实例未使用正确的协议注册,而是使用http。
来自http://localhost:8761/eureka/apps/的示例给了我<homePageUrl>http://localhost:8444/</homePageUrl>
<statusPageUrl>http://localhost:8444/info</statusPageUrl>
<healthCheckUrl>http://localhost:8444/health</healthCheckUrl>
答案 0 :(得分:0)
没有secureHomePageUrl
或secureStatusPageUrl
这样的东西 - 只有secureHealthCheckUrl
存在。检查com.netflix.appinfo.EurekaInstanceConfig
以获取Eureka客户端注册时实际传输到服务器的属性。
但是,如果主页/状态/运行状况页面网址未显示HTTPS协议,则表示您的实例未正确注册。重要的是安全端口是否已启用。检查客户端配置中的以下属性:
eureka.instance.securePort: 443
eureka.instance.securePortEnabled: true
从http://eureka:8761/eureka/apps获取的注册信息应反映这些值。
您应该记住Eureka或Ribbon都不使用homePageUrl
和statusPageUrl
。它们显然仅用于信息用途。但是,某些负载平衡规则或其他健康报告系统可能会使用healthCheckUrl
和secureHealthCheckUrl
。这可能是为什么&#34;安全&#34;该属性的版本存在但不适用于其他...