在apache服务器中使用多个路径反向代理时,如何使文件请求工作?

在apache服务器中使用多个路径反向代理时,如何使文件请求工作?,apache,proxy,reverse-proxy,Apache,Proxy,Reverse Proxy,我正在尝试使用Apache托管一个服务器,该服务器将反向代理到多个其他服务器。我尝试的方法是通过以下方式: <Location /server1/> ProxyPass http://192.168.0.31/ ProxyPassReverse http://192.168.0.31/ Order allow,deny Allow from all </Location> <Location /server2/> P

我正在尝试使用Apache托管一个服务器,该服务器将反向代理到多个其他服务器。我尝试的方法是通过以下方式:

<Location /server1/>
    ProxyPass http://192.168.0.31/
    ProxyPassReverse  http://192.168.0.31/
    Order allow,deny
    Allow from all
</Location>

<Location /server2/>
    ProxyPass http://192.168.0.32/
    ProxyPassReverse  http://192.168.0.32/
    Order allow,deny
    Allow from all
</Location>

任何关于如何更改以解决此问题的提示都将不胜感激。请注意,这不应该是一种负载平衡形式-服务器1和服务器2应该可以单独访问。

服务器1和服务器2是否具有您要查找的文件以及相应的权限?您可以从代理服务器和其他服务器发布错误日志吗?server1和server2都有所需的文件。在这种情况下,问题是客户端正在从原始代理服务器请求它,而请求没有被转发到适当的位置。通过检查所有服务器中的error.log,在init行之后没有任何新内容。有没有办法使用重写规则呢?很抱歉第一次没有注意到这一点。实际上,您从未调用过任何其他服务器。您发布了“GET 404(Not Found)”,但您的.30(原始服务器)不知道该文件,因为它不存在于.30上。如果您想从其他服务器之一访问该文件,还需要添加插件等。您也没有使用Apache作为代理负载平衡器。您只需设置一个位置,使其基本上指向其他服务器。
GET http://192.168.0.30/php/file.php 404 (Not Found)