nginx 位置 - 使用或不使用尾随斜杠时 proxy_pass 的行为会有所不同 - 为什么?

nginx 位置 - 使用或不使用尾随斜杠时 proxy_pass 的行为会有所不同 - 为什么?

我试图了解为什么以下配置的行为不一样:

location /external/partner {
    proxy_pass https://api.partner.com;
}

location /external/partner/ {
    proxy_pass https://api.partner.com/;
}

执行以下调用时: http://my.nginx/external/partner/component/getInfo

我确实知道带有尾部斜杠的版本更干净,可以避免匹配类似 /external/partner 的内容s例如,但我仍然想了解行为上的差异,因为根据我目前的理解(显然是错误的),在两种情况下应该到达上游元素的内容是相同的。

在 nginx 1.19.6 和 1.20.9 上测试配置,行为相同。

相关内容