Многосайтовый Apache Load Balancer разные домены

Многосайтовый Apache Load Balancer разные домены

Я работаю над настройкой балансировщика нагрузки Apache с 2 участниками. Эти три сервера — Windows Server 2012 с Apache 2.4.9. Я работаю над тем, чтобы один кластер балансировки нагрузки обслуживал несколько сайтов. Сейчас настроены два localhost и test1, когда я захожу на localhost, все хорошо, балансировщик нагрузки работает... Когда я захожу на test1, подсерверы загружают конфигурацию localhost (которая используется по умолчанию). Я думаю, что это что-то вроде URL-адреса test1, который не передается рабочим процессам, поэтому рабочие не могут его идентифицировать.

Вот как выглядит конфигурация виртуального хоста для localhost на балансировщике нагрузки [обратите внимание, что она сделана универсальной для удобства клиента]...

  <VirtualHost *:80>
    ServerAdmin [email protected]
    DocumentRoot "E:/generic-page/www"
    ServerName localhost
    ErrorLog "E:/_logs/localhost-error.log"
    CustomLog "E:/_logs/localhost-access.log" common


     ProxyRequests Off  
        <Proxy *>
          AllowOverride All
          Require all granted
        </Proxy>    
        ProxyPass /balancer-manager !
        ProxyPass / balancer://mycluster/ stickysession=PHPSESSIONID nofailover=On

        <Location /balancer-manager>
           SetHandler balancer-manager
           Require all granted
            </Location>


        #ProxyPassReverse / http://tstweb1.somewhere.org:80
        #ProxyPassReverse / http://tstweb2.somewhere.org:80
        <Proxy balancer://mycluster>
          BalancerMember http://tstweb1.somewhere.org:80 loadfactor=1
          BalancerMember http://tstweb2.somewhere.org:80 loadfactor=2
          ProxySet lbmethod=byrequests
        </Proxy>
    <Location />
           ProxyPass balancer://mycluster/ stickysession=PHPSESSIONID
        </Location>
</VirtualHost>

Вот как выглядит test1 на балансировщике нагрузки...

<VirtualHost *:80>
    ServerAdmin [email protected]
    DocumentRoot "E:/test1/trunk"
    ServerName test1
    ErrorLog "E:/test1/_logs/test1-error.log"
    CustomLog "E:/test1/_logs/test1-access.log" common

    ProxyRequests Off   
    <Proxy *>
      AllowOverride All
      Require all granted
    </Proxy>    
    ProxyPass /balancer-manager !
    ProxyPass / balancer://test1cluster/ stickysession=PHPSESSIONID nofailover=On

    <Location /balancer-manager>
       SetHandler balancer-manager
       Require all granted
        </Location>
    <Location />
       ProxyPass balancer://test1cluster/ stickysession=PHPSESSIONID
    </Location>

    #ProxyPassReverse / http://tstweb1.somewhere.org:80
    #ProxyPassReverse / http://tstweb2.somewhere.org:80
    <Proxy balancer://test1cluster>
      BalancerMember http://tstweb1.somewhere.org:80 loadfactor=1
      BalancerMember http://tstweb2.somewhere.org:80 loadfactor=2
      ProxySet lbmethod=byrequests
    </Proxy>
</VirtualHost>

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

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

Есть ли у кого-нибудь идеи, как решить эту проблему?

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