Estoy intentando enrutar el tráfico desde un nginx a una IP específica, correspondiente a una ruta.
Básicamente, si estoy accediendo http://example.com/192.168.0.2/something
, quiero redirigir el tráfico al pod con esa IP específica (el resultado debería ser https://192.168.0.2/something
).
Probé esto (y múltiples variaciones) pero no parece funcionar.
location ~* "([0-9]{0,3}\.[0-9]{0,3}\.[0-9]{0,3}\.[0-9]{0,3})\/(.*)" {
proxy_pass http://192.168.219.174:8080$uri;
proxy_set_header Host $host;
}
Incluso probé una versión estática (y múltiples variaciones) como la siguiente
location ~* "/test/" {
rewrite "/test/(.*)" /$1 break;
proxy_pass http://192.168.219.174:8080
proxy_set_header Host $host;
}
¿Hay alguna manera de lograr esto?
Respuesta1
No entiendo cómo se corresponde tu configuración con tu pregunta (veo el único backend con la dirección IP estática 192.168.219.174
), tal vez te refieres a algo como
location ~* "(?<pod_ip>[0-9]{0,3}\.[0-9]{0,3}\.[0-9]{0,3}\.[0-9]{0,3})(?<route>/.*)" {
rewrite ^ $route break;
proxy_pass http://$pod_ip;
}