如何configurationapache的httpd负载平衡的工人,只有不同的path,而不是主机?

如果工作人员只有不同的path,而不是主机,如何configuration在Apache HTTPD的负载平衡?

例如我有公共URL http://www.example.com/myapp ,这应该是负载平衡内部域http://internal.domain.com/myapp1http://internal.domain.com/myapp2 (相同的主机,不同的path)

更新:问题是,以下configuration(我通常使用)不允许在一个内部主机上的不同path,它适用于每个内部主机有一个上下文/ myapp运行。

 ProxyPass /myapp balancer://workers/myapp ProxyPassReverse /myapp balancer://workers/myapp <Proxy balancer://workers> BalancerMember http://internal1.domain.com BalancerMember http://internal2.domain.com </Proxy> 

我发现没有办法映射/ myapp

 internal1.domain.com/myapp1 internal1.domain.com/myapp2 internal2.domain.com/myapp1 internal2.domain.com/myapp2 

看来你将不得不通过mod_rewrite运行的URL。 所以你需要,例如,

 Listen localhost:8180 Listen localhost:8181 <Proxy balancer://workers> BalancerMember http://localhost:8180 BalancerMember http://localhost:8181 </Proxy> <VirtualHost localhost:8180> RewriteEngine On RewriteRule ^/myapp(.*)$ http://internal.domain.com/myapp1$1 [P] <VirtualHost> <VirtualHost localhost:8181> RewriteEngine On RewriteRule ^/myapp(.*)$ http://internal.domain.com/myapp2$1 [P] <VirtualHost> 

或者像这样疯狂的东西。