我有一个相当简单的 Spring Cloud Netflix 设置。我们使用 Zuul 作为反向代理,使用 Eureka 进行服务发现和注册。我们有遗留服务,我们正在慢慢扼杀。我们有许多简单的服务,它们的端点配置如下:
{host}:{port}/{service-name}/**
所以现在当每个服务都注册到 eureka,并且随后有一个路由添加到 Zuul 时,zuul 端点看起来像这样:
{zuul-host}:{zuul-port}/{service-name}/{service-name}/**
我想阻止 Zuul 将前缀从 eureka 服务的路由 URI 中剥离出来,以便我的 zuul 端点看起来像这样:
{zuul-host}:{zuul-port}/{service-name}/**
并转发至:
{zuul-host}:{zuul-port}/{service-name}/**
我希望以一种不必为每个服务添加配置的方式完成此操作。
我会认为这zuul.strip-prefix
会成功,但事实并非如此。
当前 Zuul application.yml:
zuul:
routes:
oldservice:
path: /oldservice/**
url: http://oldservice-host:9080/api/v1/oldservice
strip-prefix: false
eureka:
client:
serviceUrl:
defaultZone: http://eureka-host:8761/eureka/
有人对我如何以这种方式配置zuul有建议吗?