обратный прокси и балансировщик нагрузки - PullRequest
0 голосов
/ 16 июня 2020

Вот Apache Обратный прокси-сервер и балансировщик нагрузки, URL-адрес веб-сайта / отчетов не появляется

   <IfModule mod_proxy.c>
        ProxyPreserveHost On
        <Proxy balancer://app0102>
           BalancerMember https://serverapp01.com
           BalancerMember https://serverapp02.com
        </Proxy>
        ProxyPass / "balancer://app0102/"
        ProxyPassReverse "/" "balancer://app0102/"
   </IfModule>

если я указываю на один сервер, URL-адрес веб-сайта / отчетов работает

<VirtualHost *:443>
   <IfModule mod_proxy.c>
      ProxyPass / https://serverapp01.com

/ retry = 1 accept = 3000 timeout = 1200 Keepalive = On ProxyPassReverse / https://serverapp01.com

Веб-сайт работает в обоих случаях. Любые идеи о том, чего мне не хватает. Спасибо, Нейт.

Ответы [ 2 ]

1 голос
/ 16 июня 2020

Если ваш внутренний сервер использует SessionCook ie, вы можете использовать тот же Cook ie для липкого сеанса.

<Proxy balancer://app0102>
BalancerMember https://serverapp01.com route=node1 
BalancerMember https://serverapp02.com route=node2 
</Proxy>

ProxyTimeout 60
ProxyStatus On

ProxyPass /   balancer://app0102/  stickysession=JSESSIONID|jsessionid 
ProxyPassReverse / bbalancer://app0102

Если ваш внутренний сервер не использует Session Cook ie, вы можете использовать маршрут для закрепленного сеанса.

Header add Set-Cookie "ROUTEID=.%{BALANCER_WORKER_ROUTE}e;  path=/" env=BALANCER_ROUTE_CHANGED
<Proxy "balancer://app0102">
    BalancerMember https://serverapp01.com route=node1
    BalancerMember https://serverapp02.com route=node2
    ProxySet stickysession=ROUTEID
</Proxy>
ProxyPass / balancer://app0102/
ProxyPassReverse / balancer://app0102/

Убедитесь, что оба ваших внутренних сервера работают.

0 голосов
/ 16 июня 2020

Я предлагаю использовать кавычки как для источника, так и для назначения, например:

ProxyPass "/" "balancer: // app0102 /"

...