Tengo un "pequeño" problema de NGinx.
Tengo varias aplicaciones web y las publicaré a través de NGINX Reverseproxy.
Bajo 1 URL publicaré múltiples Webapps:
asi que:
https://Reverseproxy/webappA https://Reverseproxy/webappB https://Reverseproxy/webappCEste trabajo así:
https://Reverseproxy/webappA --> redirect to http://www.webappaWebserver.com/webappA--> Y, naturalmente, esto funciona bien ;-).
Pero con mi Webapp B tengo un desafío. Debo encontrar una manera de hacer funcionar el siguiente escenario:
https://Reverseproxy/webappB --> redirect to http://www.webappBWebserver.com/--> Y esto no funciona porque el Subsitio (después de la Barra) no está. Pero no puedo hacer cambios en la URL del servidor web en este servidor web.
Entonces, ¿cómo puedo hacer que esto funcione con este Constellation?
Aquí está mi configuración para el proxy inverso:
location /appb { proxy_pass http://10.254.1.41:80; include /etc/nginx/conf.d/proxy.conf; }proxy.conf:
proxy_http_version 1.1; proxy_cache_bypass $http_upgrade; ### Proxy headers proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection $connection_upgrade; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header Forwarded $proxy_add_forwarded; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Forwarded-Host $host; proxy_set_header X-Forwarded-Port $server_port; ### Proxy timeouts proxy_connect_timeout 60s; proxy_send_timeout 60s; proxy_read_timeout 60s; ~Muchas gracias por su ayuda.
Reemplace page_name con webappA, webappB o webappC .
Reemplace example.com con su subdominio.
location /page_name/ { rewrite ^([^.]*[^/])$ $1/ permanent; sub_filter_once off; sub_filter_types *; sub_filter /_elderjs /page_name/_elderjs; proxy_ssl_verify off; proxy_set_header Host "example.com"; proxy_set_header X-Forwarded-Host ""; proxy_set_header X-Forwarded-For ""; proxy_set_header Accept-Encoding ""; proxy_set_header Cookie ""; proxy_ssl_server_name on; proxy_pass https://example.com/; proxy_redirect ~^(http://[^/]+)(/.*)$ https://$http_host$2; }A mi me funciona ;). Espero que esta respuesta resuelva tu problema.