在apache conf文件中使用变量列表

时间:2018-08-10 14:39:47

标签: apache apache2.4 apache-config apache-modules

是否可以传递变量列表,然后在conf文件中逐个处理它们?

<IfModule proxy_module>
<Proxy balancer://mycluster>
    BalancerMember  http://host1:4001
    BalancerMember  http://host2:5001 
</Proxy>

ProxyPass /someuri/  balancer://mycluster/someuri/
ProxyPassReverse /someuri/  balancer://mycluster/someuri/
</IfModule>

以上可以很好地实现负载平衡,但是要实现负载平衡的实例数可以增加2到n。我想使用mod_macro之类的东西从外部传递主机列表。

类似以下内容

1>设置变量

hosts="host1:4001","host2:5001"

2>使用

<IfModule proxy_module>
<Proxy balancer://mycluster>    
    for(host in $hosts)
    {
        BalancerMember  host
    }
</Proxy>

ProxyPass /someuri/  balancer://mycluster/someuri/
ProxyPassReverse /someuri/  balancer://mycluster/someuri/
</IfModule>

1 个答案:

答案 0 :(得分:0)

这实际上是不可能的,可用的最接近的东西是mod_macro,但这是用于重复大块,而不是在现有部分内扩展列表。

可以通过多种方式来实现这种功能,但目前尚不存在。