Hello, I agree with this.
> you may change the HTTP router back to the radixtree_uri. So do you mean that we can have a configuration to set the default router? Zeping Bai <bzp2...@apache.org> 于2022年11月18日周五 13:37写道: > I totally agree with this and it has caused a lot of trouble for our users. > > But AFAIK, this could affect performance, so we have to evaluate the scope > and extent > of the impact and whether this modification will work well with existing > modules like AI. > > Best regards! > Zeping Bai @bzp2010 > > Chao Zhang <tok...@apache.org> 于2022年11月15日周二 13:48写道: > > > Hi, community, > > > > I'd like to talk with you guys about changing the default HTTP router > > from radixtree_uri to radixtree_host_uri. > > > > Let me just explain the differences between them. The radixtree_uri > > router matches API requests with the existing route tree by URI path, > > While the radixtree_host_uri matches the HTTP host and then matches > > the URI path. > > > > So when Apache APISIX uses radixtree_uri as the default HTTP router, > > there is a confusing scenario (even we can say it's a bug): Let's say > > we have two routes, the first one requires the host matches > > *.example.com, and the URI path is /anything, And the second one needs > > the host matches foo.example.com exactly, and the URI path is also > > /anything. In such a case, if we send an API request, we may hit the > > first route, which is counterintuitive. > > > > We also have a lot of voices from the community that users have been > > in trouble since they think Apache APISIX will consider the HTTP host > > match by default. However, it's not the case. So I'm here to propose > > changing the default HTTP router to radixtree_host_uri. > > > > I know this is a broken change, so we may have to do this in 3.x > > releases and may not back it port to the 2.15 LTS version. > > > > By the way, the radixtree_uri may have better performance than > > radixtree_host_uri, so if we really change the default HTTP router, we > > also need to give users a hint that: if they want better performance > > or you are making a stress test, you may change the HTTP router back > > to the radixtree_uri. > > > > What's your idea? > > > > Best regards > > Chao Zhang > > > > https://github.com/tokers > > >