Назад | Перейти на главную страницу

Несколько серверов Apache на одном IP, используя порт 80?

Я хотел собрать мысли людей о следующей ситуации:

Два сервера Apache, A1 и A2.

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

Я изучил mod_proxy без особого успеха и поинтересовался, есть ли какая-нибудь функция «переадресации портов DNS», которую вы можете установить для управления пакетами.

Например, IP-адрес 87.166.55.44 (поддельный, не пробуйте: p).

A1 - хосты foo.com; A2 - хосты bar.com

порт 80 перенаправлен на A1. A1 понимает, что это запрос на bar.com, поэтому действует как прокси между A2 и маршрутизатором.

Я надеюсь, что это имеет смысл, и любая помощь будет оценена по достоинству!

технически это возможно, если у вашего маршрутизатора нет встроенного обратного прокси или какой-либо маршрутизации уровня 7, о которой я не знаю. Если вы действительно хотите сделать это таким образом и хотите сделать его масштабируемым, тогда вам понадобится обратный прокси-сервер с картами имен сайтов и местами для его прокси.

<VirtualHost *:80>
  ServerName www.domain-a1.com
  ProxyRequests Off
  ProxyPass http://servera1/
  ProxyPassReverse http://servera1/
</VirtualHost>

<VirtualHost *:80>
  ServerName www.domain-a2.com
  ProxyRequests Off
  ProxyPass http://servera2/
  ProxyPassReverse http://servera2/
</VirtualHost>

Это не будет работать для сайтов SSL, поскольку согласование SSL происходит до того, как выясняется, для какого сайта он предназначен, но затем переключаются сертификаты SSL для передачи им (курица и яйцо) и т. Д.