我将以下代码添加到我的httpd.conf中以在两个应用程序服务器之间进行负载平衡
<VirtualHost www.mydomainx.com:80>
ProxyRequests off
ProxyPreserveHost Off
ServerName www.mydomainx.com
ServerAlias mydomainx.com
<Proxy *>
Order deny,allow
Allow from all
</Proxy>
ProxyPass /test balancer://mycluster stickysession=JSESSIONID|jsessionid
<Proxy balancer://mycluster>
# WebHead1
BalancerMember http://www1.mydomainx.com
# WebHead2
BalancerMember http://www2.mydomainx.com
Order Deny,Allow
Deny from none
Allow from all
ProxySet lbmethod=byrequests
</Proxy>
<Location /balancer-manager>
SetHandler balancer-manager
# I recommend locking this one down to your
# your office
Order deny,allow
Allow from all
</Location>
ProxyPass /balancer-manager !
ProxyPass / balancer://mycluster/
</VirtualHost>
每当我输入网址浏览器www.mydomainx.com的URL时,它会加载主页,如果我输入用户名和密码并单击“提交”,则会重新加载(http://www1.mydomainx.com / {{ 3}})再次重新加载主页并强制我重新输入用户名和密码,有没有办法阻止这一切?
答案 0 :(得分:0)
请务必遵循stickyness部分中的建议:
ProxyPass / balancer://mycluster stickysession=JSESSIONID|jsessionid scolonpathdelim=On
(不仅适用于/test
目录)
此外,对于JBoss应用程序服务器,您需要在Apache配置中提供route=web1
/ route=web2
等,并在jvmRoute="web1"
的JBoss配置中提供<Engine name="jboss.web"...
。 element(位置取决于您使用的JBoss版本,对于v4.2,它是server/default/deploy/jboss-web.deployer/server.xml
)