Tengo un NGINX que actúa como proxy inverso. Necesito eliminar una subcadena string_1 de la URL, el resto de la URL es variable.
Ejemplo:
Origin: http://host:port/string_1/string_X/command?xxxxx
Destination: http://internal_host:port/string_X/command?xxxxx
nginx.conf:
location /string_1/ {
proxy_pass http://internal_host:port/$request_uri$query_string;
Gracias,
@pcamacho
Respuesta1
Es realmente básico y simple. Simplemente agregue /path/
parte proxy_pass
y nginx reemplazará location
el prefijo s con esa ruta. Necesitas reemplazar /string_1/
con /
, así que hazlo:
location /string_1/ {
proxy_pass http://internal_host:port/;
}
Respuesta2
Encontré la manera de reescribir la URL proxy_pass:
location /string_1/ {
if ($request_uri ~* "/string_1/(.*)") {
proxy_pass http://internal_host:port/$1;
}
}
Saludos,
@pcamacho