browser (IE) -> apache httpd proxy -> Proxy 1 -> target url
Proxy 2 -> target url
Proxy n -> target url
所以基本上我想创建自己的apache httpd代理,在httpd conf中选择外部代理设置之间作为负载均衡器。
当前设置:
ProxyPreserveHost On
ProxyRequests On
ProxyVia On
ProxyRemote * http://proxy_ip:80
这个版本运行良好,但我无法弄清楚如何向ProxyRemote添加多个代理? ...设置为:似乎无法正常工作: ProxyRemote * balancer:// mycluster
有什么想法吗?是否可以使用apache或其他负载均衡器来实现?
答案 0 :(得分:0)
也许我帮助你的时间太晚了,但似乎在你的问题的其他地方没有明确的答案,所以这可能在将来有用。
不幸的是,答案是您无法通过Apache实现这种负载平衡:根据Apache文档(https://httpd.apache.org/docs/2.4/mod/mod_proxy.html#proxyremote),ProxyRemote
指令仅支持http
和https
架构,而不是balancer://
无法弄清楚为什么Apache开发人员不考虑这种配置,这很难,因为我找到了mod_proxy.c(http://apache-http-server.18135.x6.nabble.com/attachment/4777809/0/ProxyRemote-Balancer.patch)的补丁,它似乎只是通过添加{{1模式到匹配协议列表。
答案 1 :(得分:0)
如果您在映射到平衡器的代理服务器上设置了另一个虚拟主机,然后通过以下方式对该虚拟主机进行代理,则可能可行:
ProxyRemote * http://balancer-proxy.vhost.local