Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/369.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 在tomcat中部署eureka客户端时如何处理war名称_Java_Spring Boot_Spring Cloud_Netflix Eureka_Netflix Zuul - Fatal编程技术网

Java 在tomcat中部署eureka客户端时如何处理war名称

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

当我们在tomcat中部署eureka客户端web服务器时,它的路径可能是
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不会更新此问题