nginx leitet den Verkehr von der IP im Pfad zur lokalen IP weiter

nginx leitet den Verkehr von der IP im Pfad zur lokalen IP weiter

Ich versuche, den Datenverkehr von einem Nginx zu einer bestimmten IP umzuleiten, die einem Pfad entspricht.

Wenn ich zugreife http://example.com/192.168.0.2/something, möchte ich den Datenverkehr grundsätzlich auf den Pod mit dieser bestimmten IP umleiten (das Ergebnis sollte sein https://192.168.0.2/something).

Ich habe dies (und mehrere Variationen) versucht, aber es scheint nicht zu funktionieren.

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;
}

Ich habe sogar eine statische Version (und mehrere Variationen) wie unten ausprobiert

location ~* "/test/" {
       rewrite "/test/(.*)" /$1 break;
       proxy_pass http://192.168.219.174:8080
       proxy_set_header Host $host;
} 

Gibt es eine Möglichkeit, dies zu erreichen?

Antwort1

Ich verstehe nicht, wie Ihre Konfiguration mit Ihrer Frage zusammenhängt (ich sehe das einzige Backend mit der statischen IP-Adresse 192.168.219.174), vielleicht meinen Sie so etwas wie

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;
}

verwandte Informationen