Проблема:
Используется mod_proxy для балансировки нагрузки (проксирования https запросов на 2 backend-сервера). В качестве пути для балансировки используется путь "/load-balancer/", при обращении по которому запрос отправляется на "https://192.168.0.101:8000/services/" или "https://192.168.0.101:8001/services/". Соответствующая настройка httpd следующая:
Вроде бы всё верно, но почему-то все запросы на поддиректории директории "/load-balancer/" приводят к обращению всё к той же корневой директории "/services/" backend-сервера. Т.е. при выполнении запроса на путь "/load-balancer/echo?wsdl" видим все равно тоже, что и для запроса "/load-balancer/".
Решение:
В директиве BalancerMember в конце URL убрать слеш. Т.е. получится конфигурация:
Используется mod_proxy для балансировки нагрузки (проксирования https запросов на 2 backend-сервера). В качестве пути для балансировки используется путь "/load-balancer/", при обращении по которому запрос отправляется на "https://192.168.0.101:8000/services/" или "https://192.168.0.101:8001/services/". Соответствующая настройка httpd следующая:
SSLProxyEngine on
ProxyPass /load-balancer/ balancer://myhttpsbalancer/
ProxyPassReverse /load-balancer/ https://192.168.0.101:8000/services/
ProxyPassReverse /load-balancer/ https://192.168.0.101:8001/services/
<Proxy balancer://myhttpsbalancer>
BalancerMember https://192.168.0.101:8000/services/ loadfactor=50
BalancerMember https://192.168.0.101:8001/services/ loadfactor=50
</Proxy>
Вроде бы всё верно, но почему-то все запросы на поддиректории директории "/load-balancer/" приводят к обращению всё к той же корневой директории "/services/" backend-сервера. Т.е. при выполнении запроса на путь "/load-balancer/echo?wsdl" видим все равно тоже, что и для запроса "/load-balancer/".
Решение:
В директиве BalancerMember в конце URL убрать слеш. Т.е. получится конфигурация:
SSLProxyEngine on
ProxyPass /load-balancer/ balancer://myhttpsbalancer/
ProxyPassReverse /load-balancer/ https://192.168.0.101:8000/services/
ProxyPassReverse /load-balancer/ https://192.168.0.101:8001/services/
<Proxy balancer://myhttpsbalancer>
BalancerMember https://192.168.0.101:8000/services loadfactor=50
BalancerMember https://192.168.0.101:8001/services loadfactor=50
</Proxy>
Комментариев нет:
Отправить комментарий