我正在尝试设置我的apache负载均衡器来代理相同的后端群集到运行在不同端口上的应用程序。群集定义如下:
<Proxy balancer://wordpress-cluster>
BalancerMember http://192.168.2.10:80
BalancerMember http://192.168.2.11:80
</Proxy>
<Proxy balancer://corporate-cluster>
BalancerMember http://192.168.2.10:81
BalancerMember http://192.168.2.11:81
</Proxy>
在负载均衡器中,其中一个vhost需要与两者进行通信,所以在vhost定义中我有:
ProxyRequests Off
ProxyPreserveHost Off
SSLProxyEngine On
<Proxy *>
Order deny,allow
Allow from all
</Proxy>
ProxyPass /feed balancer://wordpress-cluster/feed lbmethod=byrequests
ProxyPassReverse /feed balancer://wordpress-cluster/feed
ProxyPass / balancer://corporate-cluster/ lbmethod=byrequests
ProxyPassReverse / balancer://corporate-cluster/
在请求'/'时,我从端口80应用程序获取内容,不端口81应用程序。
有人知道发生了什么事吗?看起来这可能是一个过分热心的工作者共享的情况,但不应该指定不同的端口阻止它?
我还有别的事吗?
忘记提及:这是在一个centos盒子上使用apache 2.2.4-1。
提前致谢! 添
答案 0 :(得分:0)
<Proxy balancer://wordpress-cluster>
BalancerMember http://192.168.2.10:80
</Proxy>
<Proxy balancer://corporate-cluster>
BalancerMember http://192.168.2.11:81
</Proxy>
但当然会破坏平衡和故障转移支持...... 不好
第二个选项,创建dns别名以确保平衡器看起来不同(即使它们指向相同的框:
<Proxy balancer://wordpress-cluster>
BalancerMember http://192.168.2.10:80
BalancerMember http://192.168.2.11:80
</Proxy>
<Proxy balancer://corporate-cluster>
BalancerMember http://corp01:81
BalancerMember http://corp02:81
</Proxy>
瞧!设置现在正在为我工作:)