Прямой или обратный прокси-сервер?

Прямой или обратный прокси-сервер?

У меня есть веб-приложение, работающее на CentOS 7 с Apache, которое использует xmlhttprequest и fetch apis для доступа к Express Server (NodeJS), работающему на той же машине. Мое веб-приложение использует порт 80 для входящих соединений, в то время как мой Express Server прослушивает порт 3001.

После развертывания моего веб-приложения я не знаю, нужен ли мне прямой прокси-сервер или обратный прокси-сервер для осуществления связи с портом 3001 сервера Express. Какой прокси-сервер мне следует настроить?

Схема веб-приложения

решение1

То, что вы описываете, — это обратный прокси-сервер.

Обычный («прямой») прокси-сервер обслуживает одного клиента или группу клиентов, разрешая доступ к удаленным серверам, запрошенным клиентом.

Обратный прокси-сервер обслуживает любого клиента, разрешая доступ к одному серверу или набору серверов.

Однако, когда вы говорите, что вы need the web app to continue sending [its] typical html response, то веб-приложение не действует как прокси, и я больше не верю, что у вас есть или вам нужен обратный прокси или какой-либо прокси. Если в веб-приложении есть код приложения, работающий на порту 80, который делает свои собственные запросы к серверу Node.js и интерпретирует ответ, чтобы предоставить ответ клиенту, то у вас нет прокси, у вас есть сервер Apache front-end и сервер Node.js back-end. Прокси, на вашей схеме, находится между front-end и back-end сервером, это нечто иное, чем ваш сервер Apache front-end.

Связанный контент