Apache反向代理不能像预期的那样工作

好吧,我感觉有点愚蠢。

我试图设置一个简单的Apache反向代理设置,我正在打墙。 我已经有了这个设置在过去,但现在我只是没有看到出了什么问题。 下面是设置:

Listen 4050 ServerName lb-test DocumentRoot /www/app ProxyRequests Off Header add Set-Cookie "BALANCEID=hej.%{BALANCER_WORKER_ROUTE}e; path=/;" env=BALANCER_ROUTE_CHANGED <Proxy balancer://cluster> BalancerMember http://appserver1:4050 route=appserver1 BalancerMember http://appserver2:4050 route=appserver2 Order deny,allow Allow from all </Proxy> ProxyPass /balancer-manager ! ProxyPass / balancer://cluster/ stickysession=BALANCEID ProxyPassReverse / balancer://cluster/ <Location /balancer-manager> SetHandler balancer-manager Order deny,allow Deny from None Allow from all </Location> 

我可以在日志中看到打开debugging的请求被路由到一个平衡器成员,但是也发生的是代理主机url也被插入到头中。

从lb主机:curl -I本地主机

 HTTP/1.1 200 OK Date: Wed, 11 Apr 2012 17:33:18 GMT Server: thin 1.3.1 codename Triple Espresso Content-Type: text/html; charset=utf-8 Via: 1.1 appserver2:4050 Via: 1.1 lb-test Set-Cookie: BALANCEID=hej.appserver2; path=/; 

正如你所看到的,这两个主机都在标题中,这正在破坏应用程序。 我会认为打本地主机:80不会触发mod_proxy,对不对? 如果我打本地主机:4050,同样的事情发生。 任何人都知道最近在做什么?

谢谢

你应该设置;

ProxyPreserveHost On

在您的虚拟主机configuration