Nginx proxy\u通过uri中的删除路径

Nginx proxy\u通过uri中的删除路径,nginx,nginx-reverse-proxy,nginx-config,nginx-location,Nginx,Nginx Reverse Proxy,Nginx Config,Nginx Location,我的nginx.conf文件中有以下配置 location /test/v1/system/ { set $checker http://checker-svc.test.svc.cluster.local.:8080/; proxy_pass $statuschecker; } 因此,根据此配置,应删除/test/v1/system,并将剩余的uri发送到代理。 例如/测试/v1/系统/状态-> 但这不会发生,请求变成-> 如果我删除set$checker并按照下面提到的方式

我的nginx.conf文件中有以下配置

location /test/v1/system/ {
   set $checker http://checker-svc.test.svc.cluster.local.:8080/;  
   proxy_pass $statuschecker;
}
因此,根据此配置,应删除/test/v1/system,并将剩余的uri发送到代理。 例如/测试/v1/系统/状态->

但这不会发生,请求变成->

如果我删除set$checker并按照下面提到的方式修改配置,一切都会正常工作-

location /test/v1/system/ {  
   proxy_pass http://checker-svc.test.svc.cluster.local:8080/;
}
我想要这个变量,因为当远程服务关闭并返回时,nginx不会给出502坏网关错误

我应该如何配置nginx,以便替换变量和路径。

您错过了之后的部分。如果要使用变量,请使用
rewrite…break
修改URI。