2013-03-04 54 views
0

我使用单个Apache HTTP Server(2.2.23)作为具有两个IBM Websphere应用程序服务器节点(其他机器)的负载均衡器。我已经部署了基于helloWorld的简单文本应用程序,并且它适用于负载平衡器。但是当我部署包含图像,css文件,java脚本文件的真实应用程序时。它加载网页没有图像,并告诉我简单的文字,给我上error_logs以下异常和相似类型的异常:Apache HTTP Server负载均衡器 - 文件不存在异常

[错误] [客户192.217.71.77]文件不存在:在/ usr /本地/ Apache2的/ htdocs中/应用程序,引用者: http://192.168.141.17/application/faces/test.jsp

有趣的是,当我没有负载平衡器访问应用程序,它也能正常工作。

这里是负载均衡器的设置

<VirtualHost *:80> 
ServerName test.com:80 
<Proxy balancer://mybalancer> 
BalancerMember `http://192.168.141.13:9081` route=1 
BalancerMember `http://192.168.141.13:9082` route=2 
Order allow,deny 
Allow from all 
</Proxy> 
RewriteEngine On 
RewriteLog "/usr/local/apache2/logs/rewrite.log" 
RewriteLogLevel 5 
ProxyPass /application/faces/test.jsp balancer://mybalancer/application/faces/test.jsp 
ProxyPassReverse /application/faces/test.jsp 
balancer://mybalancer/application/faces/test.jsp 
</VirtualHost> 

我使用下面的网址从我的机器上访问应用程序的负载均衡机:http://192.168.141.17/application/faces/test.jsp

是否有任何模块/配置我缺少停止Apache在浏览器上加载图像?请指教。

回答

0

你只是代理test.jsp本身,而不是应用程序的整个上下文根。您需要ProxyPass模式,其中包含触发404的资源(旧Apache不会正确地将其包含在错误日志条目中)