tengo este requisito, cuando hay múltiples aplicaciones Rails. Cada aplicación se implementa en dos servidores de aplicaciones (app1 y app2) y se equilibran de carga mediante nginx en un servidor independiente (lb).nginx en PROXY_PASS servidor independiente para múltiples aplicaciones con rieles sub URI de pasajeros independiente en diferentes cajas
La caja lb contiene nginx con sabor de vainilla sin plugins de pasajeros. Las aplicaciones de rieles se implementan solo para pasajeros.
aplicaciones Todos los carriles tienen que ejecutarse en el mismo dominio pero con diferente sub_uri, como a continuación
http://www.example.com/rails1 http://www.example.com/rails2
Tengo la caja lb configuración de nginx algo parecido a continuación.
http {
...
upstream rails1_cluster {
ip_hash;
server app1.server:3001;
server app2.server:3001;
}
upstream rails2_cluster {
ip_hash;
server app1.server:3002;
server app2.server:3002;
}
...
server {
server_name www.example.com;
...
...
location /rails1 {
proxy_pass http://rails1_cluster;
...
}
location /rails2 {
proxy_pass http://rails2_cluster;
...
}
....
}
}
Con esta configuración, la aplicación se ejecuta en independiente de pasajeros en app1 y app2 genera un error que no es capaz de encontrar cualquier ruta/rails1 /.
Este artículo "How To Deploy Phusion Passenger To A Subdirectory, Routing Errors, And Restarting" trata de abordar el mismo problema, pero se sugiere el cambio de las rutas, que no desea hacer. Las aplicaciones de Rails con las que trato son de la misma base de código, pero están personalizadas para instancias específicas que atienden a un cliente específico.
En plug-in de pasajeros para el servidor Nginx, hay una passenger_base_uri que ayuda en la creación de un sub URI de la aplicación. ¿Cuál es el equivalente de lo mismo en caso de pasajeros independientes? ¿O me estoy perdiendo algo fundamental aquí? Cualquier ayuda, sugerencias ayudarían.