目录
一、问题描述
二、问题产生原因:
三、总结
一、问题描述
在做微服务的项目的时候,选择在nacos上配置Gateway网关的路由规则,然后在进行前后端联调测试的时候发现,部分的微服务可以正常访问,但是commerce-service这个微服务访问不了,后端控制台日志报错404,也就是找不到对应的服务。以下是我最开始的网关配置,如下图:
二、问题产生原因:
经过查询才了解到问题在于对gateway配置中-path的理解错误,我在配置过程中的时候,认为多个path路由转发到同一个微服务的逻辑是或的逻辑,也就是满足其中一条匹配规则就路由过去,但是实际上是并的逻辑,也就是说得全部满足才会路由到这个微服务,所以在进行接口测试和联调测试的时候,发现网关出会报错,报错为http 404。将其修改为如下图后可以正常进行路由转发:
三、总结
在进行gateway网关配置的时候,同一个id下多个匹配规则之间并不是或的关系,而是且的关系,所以需要分开进行配置,虽然可能会麻烦些,但是不会产生报错。