Требуется HTTP Relay / Forwarder

295
Ricky

Я ищу функцию программного обеспечения / инструмента / операционной системы, которая позволяет мне делать следующее:

Входящие HTTP-запросы перенаправляются в другую систему (и затем ответ также отправляется обратно):

Таким образом, клиент A отправляет http://myserver/path/subdir1

MyServer перенаправит запрос http://otherserver1/path/something, дождется ответа и затем отправит ответ клиенту А.

Кто-то еще (может быть, клиент A, может быть, клиент B) отправляет запрос http://myserver/path/subdir2

MyServer перенаправит запрос http://otherserver2/some/where, дождется ответа и затем отправит ответ обратно запрашивающей стороне.

Это не традиционный прокси, так как существует соответствие между входящим URL-адресом и forward-target. Кроме того, клиент / запросчик не должен знать об этом, а другие серверы также не должны знать об этом. Поскольку путь HTTP должен влиять на цель отображения, нормальный маршрутизатор невозможен.

Я все еще ищу, как бы вы назвали это и как это решить. Не должно быть слишком много проблем для моих чувств.


Сервер, который должен запустить HTTP-пересылку, - Windows Server 2016.

0
Может помочь определить вашу среду. harrymc 5 лет назад 0

1 ответ на вопрос

0
grawity

Вы описываете HTTP обратный прокси . Эта функция существует на нескольких веб-серверах (включая Nginx и Apache httpd) - с помощью ProxyPass или аналогичного оператора можно настроить произвольное расположение для перенаправления на другой сервер вместо локального обслуживания. Это также включает переписывание пути HTTP-запроса, которое вы описываете.

Хм, у меня возникло ощущение, что обратные прокси не могут сопоставить URL-адреса. Но в этом случае я буду читать в них. Ricky 5 лет назад 0
Они могут и часто специально используются для этой цели. grawity 5 лет назад 0