2017-06-03 32 views
0

部署尤里卡客户当我们部署在Tomcat中灵光一现的客户端的Web服务器,它的路径可能是hostname:port/project_name/**如何应对战争的名称时,在Tomcat中

但是当zuul与尤里卡service-id路线,zuul总是忽略project_name

以及如何在eureka客户端或zuul中配置此project_name

回答

0

在zuul配置中,您可以使用stripPrefix选项在url中保留前缀。它的默认值是true,即它会在url中删除你的project_name。如果您将stripPrefix更改为false(如下例所示),则您的eureka客户端将收到传递给zuul服务器的完整url。

zuul: 
    routes: 
    service-a: 
     path: /service-a/** 
     stripPrefix: false 
+0

然后我必须在zuul中对project_name进行硬编码,尤里卡能自动发现项目名称或者尤里卡客户端告诉尤里卡服务器? – miaoliqiusi

+0

每个尤里卡客户端都会报告它是带有主机名和端口的服务标识(应用程序名称)。当zuul决定路由时,尝试将配置的'path'与请求url匹配并选择路由。每条路线都有服务ID。在上面我的配置中,service-a(路由的孩子)是服务ID。 Zuul将请求转发给具有相同服务标识的主机和端口。默认情况下,当zuul转发请求时,它将去掉匹配的url前缀。这就是为什么你需要在你的情况下指定stripPrefix为false。 –

+0

你把project_name放在你的例子中的路径中,我想避免那个。因此,连接到zuul的客户端不会感觉到后面的系统。 – miaoliqiusi