确认Apache中的设置
概述
在指定负载均衡器时,由于对conf文件中的定义不太理解,我在简单的环境中进行了确认。触发原因是在指令中,无法使用/符号,这个情况让我感到有些困惑。例如:
环境
-
- macOS sierra(Host)
-
- Docker
apache 2つ
loadbalancer 1つ
1. 配置 Apache 環境
从DockerHub借用镜像。
拉取 eboraas/apache 的 Docker 镜像。
安装vim以进行文件编辑。
apt-get update
apt-get install vim
准备用于确认的HTML代码
由于默认情况下/var/www/html是主目录,所以我们直接使用它。
<html>
<body>
It's work!! [apache#one]
</body>
</html>
为了确认文件夹下的显示情况,创建一个适当的文件夹并放置HTML文件。
<html>
<body>
[apache#one] /dir_a/dir_b/index.html
</body>
</html>
同样地,配置第二个Apache环境。
负载均衡的环境准备。
从DockerHub借用镜像。
使用Docker命令拉取corba/load-balancer容器镜像
从负载均衡器的一侧进行HTML显示确认。
# curl http://172.17.0.22/
<html>
<body>
It's work!! [apache#one]
</body>
</html>
# curl http://172.17.0.22/dir_a/dir_b/
<html>
<body>
[apache#one] /dir_a/dir_b/index.html
</body>
</html>
# curl http://172.17.0.23/
<html>
<body>
It's work!! [apache#two]
</body>
</html>
# curl http://172.17.0.23/dir_a/dir_b/
<html>
<body>
[apache#two] /dir_a/dir_b/index.html
</body>
</html>
负载均衡器配置测试 #1
ProxyPass /balancer-manager !
ProxyPass / balancer://cluster/ lbmethod=bybusyness
<Proxy balancer://cluster/>
# Balancer members
BalancerMember http://172.17.0.22:80 route=1
BalancerMember http://172.17.0.23:80 route=1
</Proxy>
<Location /balancer-manager>
SetHandler balancer-manager
</Location>
点击更新按钮以确认切换。


负载均衡器配置测试 #2
ProxyPass /balancer-manager !
ProxyPass / balancer://cluster/dir_a/dir_b/ lbmethod=bybusyness
<Proxy balancer://cluster/dir_a/dir_b/>
# Balancer members
BalancerMember http://172.17.0.22:80 route=1
BalancerMember http://172.17.0.23:80 route=1
</Proxy>
<Location /balancer-manager>
SetHandler balancer-manager
</Location>
确认这边也能顺利切换。


结果似乎并不是斜杠“/”不能在指令中使用…
在<代理负载平衡器://~~>中,我们确认了即使在路径定义中包含“/”,它仍能正常工作。然而,由于我们还未找到实际问题的根本原因,所以仍需继续调查…
请提供更多上下文。
- http://qiita.com/maa0984/items/eb182fa480650b3af3bf