2010-09-02 57 views
0

我有一个jQuery应用程序,可以在单节点web服务器上正常工作,但在测试集群服务器(Apache mod_proxy_balancer)上运行它时会中断。该代码是这样的:jQuery get()在群集网站上返回空白,mod_proxy_balancer错误?

$.get("/file/foo.xml", function(xml) { 
    alert(xml); 
} 

聚类配置是:

<Proxy balancer://mycluster> 
    BalancerMember http:// 10.32.4.37:90 
    BalancerMember http:// 10.32.4.57:90 
</Proxy> 
#ProxyPass/balancer://mycluster/ stickysession=JSESSIONID|jsessionid 
ProxyPass/balancer://mycluster/ 

测试负载平衡器(Apache)的上10.32.4.37:80运行。如果我去10.32.4.37:90或10.32.4.37:90它可以正常工作......但如果我去10.32.4.37:80它会中断。 “xml”的值始终为空。奇怪的是,它在IE 6上工作正常,但不是Firefox 3.6.8。我尝试了几个盒子...

我想知道得到调用失败,因为它认为它的跨域加载......技术上它是......但不应该这种类型的调用好吗?

是否有一些我可以用来做这项工作的Apache voodoo?

+0

请注意,BalanceMember指令中有多余的空格,因为StackOverflow认为它有一个链接:-P – bex 2010-09-02 19:04:28

回答

1

固定它...

的问题是,我在做一个URL重写为“/file/foo.xml”,我有两个后端网络上mod_rewrite的代理指令服务器,但我没有在前端负载均衡器上使用它。

自然地,URL重写属于前端服务器,所以你只需要配置一台服务器......但你会认为这两种方式都可以。