Java 在tomcat中部署eureka客户端时如何处理war名称
当我们在tomcat中部署eureka客户端web服务器时,它的路径可能是Java 在tomcat中部署eureka客户端时如何处理war名称,java,spring-boot,spring-cloud,netflix-eureka,netflix-zuul,Java,Spring Boot,Spring Cloud,Netflix Eureka,Netflix Zuul,当我们在tomcat中部署eureka客户端web服务器时,它的路径可能是hostname:port/project\u name/** 但是当zuul使用eureka服务id进行路由时,zuul总是忽略项目名称 如何在eureka client或zuul中配置此项目名称?在zuul配置中,您可以使用stripPrefix选项在url中保留前缀。它的默认值为true,即它将删除url中的项目名称。如果将stripPrefix更改为false,如下面的示例所示,您的eureka客户端将收到传递给z
hostname:port/project\u name/**
但是当zuul使用eureka服务id进行路由时,zuul总是忽略项目名称
如何在eureka client或zuul中配置此项目名称?在zuul配置中,您可以使用stripPrefix
选项在url中保留前缀。它的默认值为true,即它将删除url中的项目名称。如果将stripPrefix
更改为false
,如下面的示例所示,您的eureka客户端将收到传递给zuul服务器的完整url
zuul:
routes:
service-a:
path: /service-a/**
stripPrefix: false
在zuul配置中,您可以使用stripPrefix
选项在url中保留前缀。它的默认值为true,即它将删除url中的项目名称。如果将stripPrefix
更改为false
,如下面的示例所示,您的eureka客户端将收到传递给zuul服务器的完整url
zuul:
routes:
service-a:
path: /service-a/**
stripPrefix: false
然后我必须在zuul中硬编码项目名称,eureka是否可以自动发现项目名称,或者eureka客户端是否可以告诉eureka服务器?每个eureka客户端都报告其服务id(应用程序名称)以及主机名和端口。当zuul决定路由时,尝试将配置的路径
与请求url匹配,并选择路由。每个路由都有服务id。在我上面的配置中,service-a(路由的子级)是服务id。Zuul将请求转发到具有相同服务id的主机和端口。默认情况下,当Zuul转发请求时,它会去掉匹配的url前缀。这就是为什么在您的示例中需要将stripPrefix指定为false。在您的示例中,您将项目名称放在路径中,我希望避免这种情况。这样连接到zuul的客户端就不会感到系统落后。似乎eureka不会更新此问题,那么我必须在zuul中硬编码项目名称,eureka是否可以自动发现项目名称,或者eureka客户端是否可以告知eureka服务器?每个eureka客户端都会报告其服务id(应用程序名称)以及主机名和端口。当zuul决定路由时,尝试将配置的路径
与请求url匹配,并选择路由。每个路由都有服务id。在我上面的配置中,service-a(路由的子级)是服务id。Zuul将请求转发到具有相同服务id的主机和端口。默认情况下,当Zuul转发请求时,它会去掉匹配的url前缀。这就是为什么在您的示例中需要将stripPrefix指定为false。在您的示例中,您将项目名称放在路径中,我希望避免这种情况。这样,连接到zuul的客户端就不会感觉到系统落后。似乎eureka不会更新此问题