Estaba tratando de usar el servidor de aplicaciones Thin y tuve un problema.Cómo conservar URL de solicitud con nginx proxy_pass
Cuando nginx proxies solicita Thin (o Unicornio) utilizando proxy_pass http://my_app_upstream;
la aplicación recibe la URL modificada enviada por nginx (http://my_app_upstream
).
Lo que quiero es pasar la URL original y la solicitud original del cliente sin modificaciones ya que la aplicación depende mucho de ella.
El nginx' doc dice:
Si es necesario transmitir URI en la forma no procesada a continuación, la directiva PROXY_PASS deben ser usadas sin URI parte.
Pero no entiendo exactamente cómo configurar que a medida que la muestra relacionada en realidad está utilizando URI:
location /some/path/ {
proxy_pass http://127.0.0.1;
}
Así podría por favor me ayude a encontrar la manera de preservar la URL solicitud original del cliente?
Acabo de descubrir lo mismo. Gracias. –
Nota para otras personas que encuentran esto: El corazón de la solución para hacer que nginx no manipule la URL, es eliminar la barra al final de la directiva 'proxy_pass'. 'http: // my_app_upstream' vs' http: // my_app_upstream/' –
Gracias @HugoJosefson: ese fue mi problema, ¡gracias por publicar! – dsldsl