Servidor Nginx Proxy: asigna sitios web separados según la ruta en la URL

Servidor Nginx Proxy: asigna sitios web separados según la ruta en la URL

Estoy intentando configurar un servidor proxy para que

proxy-server.com/app1  -->  website1.com
proxy-server.com/app2  -->  website2.com
  1. No debería haber ninguna redirección a la aplicación de fondo real. El usuario sólo debe ver proxy-server.com/app[1/2]en la URL.
  2. Todos los recursos estáticos deberían cargarse bien. Por ejemplo, un recurso /js/sample.jsde app2 debe solicitarse desde la ubicación/app2/js/sample.js
  3. Cuando realizo una acción, por ejemplo, envío un formulario o navego a otra página en la aplicación 2, la solicitud debe anteponerse /app2para que se envíe a la dirección correcta.
http {
  upstream webapp1 {
      server website1.com:443;
    }

    upstream webapp2 {
      server website2.com:443;
    }


     server {
          listen 80;
          listen 443 ssl;
          server_name   proxy-server.com;

          # certificate section

          location /app1 {
            proxy_pass https://webapp1/;
            proxy_set_header Host            website1.com;
          }

          location /app2 {
            proxy_pass https://webapp2/;
            proxy_set_header Host            website1.com;
          }
     }
}

La configuración solo soluciona el punto 1, pero estoy luchando mucho para encontrar una solución para los otros dos puntos mencionados anteriormente. Estoy buscando una solución limpia, solo para mencionar que intentaré evitar ifdeclaraciones o sub_filtermódulos :)

información relacionada