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

Два сервера, два домена, один ip. mod_proxy новичок

Я запускаю два виртуальных веб-сервера (на обоих работает apache2 на debian). У меня только один внешний IP-адрес, но два домена, и я хочу, чтобы домен шел на каждый из серверов.

Я понял, что мне нужен обратный прокси, и включил модули mod_proxy и mod_proxy_http на «основном сервере». Нужно ли мне что-нибудь включать на «вторичном сервере»?

Я тоже понял, что мне нужно кое-что записать в файл виртуального хоста, но что? На первичном сервере у меня есть файл виртуального хоста для одного из доменов и несколько для поддоменов. Я хочу, чтобы domain1.tld перешел на основной сервер (порт 80 перенаправлен на него, так что это работает), а domain2.tld перешел на другой сервер (внутренний ip 192.168.0.x). На него не нужно перенаправлять порты, верно? Итак, что добавить и в какой файл виртуального хоста? Или новый? Другие вопросы предлагают добавить ProxyPass и ProxyPassReverse, но я все равно потерялся, и я просто не понимаю документацию apache.

заранее спасибо

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

Вкратце, вы должны создать третью виртуальную машину, на которой работает HAProxy и которая имеет ваш IP-адрес. Ваша конфигурация HAProxy определит, к какому экземпляру Apache будет отправлен запрос на серверной стороне.

Взгляните на сайт, и если вы хотите попробовать, вы можете задать больше вопросов.

Очень похоже на этот, хотя мне еще не приходилось этого делать, я не уверен

Два домена на одном экземпляре Apache (например, одна физическая машина) с одним IP-адресом - это очень просто и известно как Name Based Virtual Hosts.

В руководстве по Apache это очень хорошо описано, и даже вы сможете понять смысл этой страницы: http://httpd.apache.org/docs/2.0/vhosts/name-based.html.

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

Вы можете запустить более одного сервера и одного домена на одном сервере.

Псевдоним или Vhost будут принимать разные домены на одном основном сервере, поскольку файл конфигурации Vhost устанавливает имя домена и имя сервера, таким образом, один сервер может запускать два домена на одном сервере и IP. Преимущества: на одном сервере работает несколько доменов. Ограничение ресурсов (использование только одного сервера для обслуживания сайтов)

Недостатки:

Если у вас уже есть интенсивная загрузка серверов из основного домена, добавление дополнительных серверов не поможет.

Другое решение: вам нужен балансировщик нагрузки, он идет перед маршрутизацией серверов для перенаправления доменов на каждый IP-адрес за брандмауэром или без одного IP-адреса на локальные IP-адреса.

Вот статья, которую я написал, чтобы настроить хостинг разных доменов http://www.gtwcmt.co.uk/virtual-host-creation-in-apache-windows/