¿Proxy directo o inverso?

¿Proxy directo o inverso?

Tengo una aplicación web ejecutándose en CentOS 7 con Apache que usa xmlhttprequest y recupera API para acceder a un Express Server (NodeJS) que se ejecuta en la misma máquina. Mi aplicación web usa el puerto 80 para conexiones entrantes mientras mi Express Server escucha en el puerto 3001.

Al implementar mi aplicación web, no sé si necesito un proxy directo o un proxy inverso para lograr la comunicación con el puerto 3001 del servidor Express. ¿Qué proxy debería configurar?

Diagrama de aplicación web

Respuesta1

Lo que estás describiendo es un proxy inverso.

Un proxy normal ("reenvío") sirve a un cliente o a un conjunto de clientes, permitiendo el acceso a servidores remotos solicitados por el cliente.

Un proxy inverso sirve a cualquier cliente y permite el acceso a un servidor o a un conjunto de servidores.

Sin embargo, cuando dice que need the web app to continue sending [its] typical html response, entonces la aplicación web no actúa como un proxy y ya no creo que tenga o necesite un proxy inverso ni ningún tipo de proxy. Si hay un código de aplicación en la aplicación web que se ejecuta en el puerto 80 y que realiza sus propias solicitudes al servidor Node.js e interpreta la respuesta para proporcionar una respuesta al cliente, entonces no tiene un proxy, tiene un Servidor front-end Apache y un servidor back-end Node.js. El proxy, en su diagrama, está entre el servidor front-end y el servidor back-end, es algo diferente de su servidor front-end Apache.

información relacionada