
Tengo varios flujos ascendentes entre los que selecciono en función de un conjunto de encabezados, pero encuentro que después de agregarhttps://github.com/GUI/nginx-upstream-dynamic-serversque mi $destination
variable se interpreta como una URL y no como ascendente. Aquí hay un fragmento:
http {
upstream LegacyService {
server my.server.location.com:443 max_fails=0 resolve;
}
upstream NewService {
server myNew.server.location.com:443 weight=100 max_fails=0 resolve;
}
...
map $http_some_header $destination {
default LegacyService;
"~marker" NewService;
}
server {
listen localhost:8080;
# lots of the usual setup
location / {
proxy_pass https://$destination;
}
}
}
Esta configuración me genera un montón de errores ya que ahora mis destinos se interpretan como URL en lugar de nombres de canales ascendentes:
2021/08/09 11:05:56 [error] 15326#0: *5761 no live upstreams while connecting to upstream, client: 10.1.1.5, RequestID: 6ef3b58fc95e07b083e6186df62ba15d, server: my.server.com, request: "POST / HTTP/1.1", upstream: "https://LegacyService/", host: "my.server.com"
Me gustaría entender por qué está ocurriendo este cambio y ver si se puede hacer algo. ¿Estoy leyendo mal el mensaje de error?