2

我们正在使用相同服务的三个实例,它们在 eureka 中注册。他们面前有zuul。

每当我们的服务尝试重定向到控制器之一(例如 /login)时,它会直接转到主机名:端口(在浏览器地址字段中可见),而不是再次通过 zuul 代理。这给了我们超时。我们正在跟踪进入服务的标头 -host标头设置为我们服务的主机名。

它不应该使用地址 fromx-forwarded-host吗?如何强制 zuul/eureka 这样做?或者我们应该调整一些 spring-boot 配置来使用它host

4

1 回答 1

2

您的服务正在使用它自己的主机发送位置标头。您要么修改服务以引用您的基本主机,要么编写一个 zuul 过滤器,在将响应头发送到客户端之前对其进行修改。

这是过滤器指南:https ://github.com/Netflix/zuul/wiki/Writing-Filters

您可以通过修改标题RequestContext

如果您使用过滤器制作 bean,它将被注册而无需代表您执行任何操作。

于 2015-10-09T14:52:35.633 回答