2012-02-15 6 views
0

позволяет сказать, что у меня есть несколько серверов http на каждой мыслимой технологии. Например, Apache для PHP, Tomcat для JSP и т. Д. ... работает на одной машине с одним физическим интерфейсом с одним открытым IP-адресом.Повторная маршрутизация HTTP-запросов на основе полного доменного имени

Теперь я хочу, чтобы все они ответили на тот же порт, конечно, конечно. Это невозможно, поскольку одно приложение - один порт, использующий TCP/IP. Я знаю, apache, например, может интегрировать Tomcat и обрабатывать запросы на .jsp-страницах для него, но я думаю о другой, более универсальной оценке.

Возможно ли, может быть, вопрос лучше, есть ли какое-либо приложение, которое может предварительно фильтровать HTTP-запросы и пересылать их на другой порт? На основании запрошенной области? В обе стороны? Таким образом, клиент будет думать, что он разговаривает с портом 80, но внутренне он будет обслуживаться Tomcat, работающим на порту 8080? Надеюсь, ты знаешь, что я имею в виду.

Спасибо.

ответ

0

Я бы использовал обратный прокси-сервер, такой как apache mod_proxy. Обратный прокси перенаправляет входящие запросы на нужный сервер, даже если все серверы находятся на одном физическом узле.

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

http://en.wikipedia.org/wiki/Reverse_proxy

+0

Кажется, очень хорошо, спасибо :) –

Смежные вопросы