【发布时间】:2019-07-12 22:18:05
【问题描述】:
我需要一些听起来微不足道的东西,但我不知道如何做到这一点:根据环境变量(从 conf 中设置或从 os 中设置)从 proxypass conf 切换到另一个。 我有几个条件在这里可能很棘手:
- 我无法从命令行使用变量 (-DPARAMATER_A)
- 我无法更改使用的路径。
我知道我可以使用重写规则进行一些条件传递,但除非我读错了,否则我不能使用环境变量作为触发器。
我也知道您不能使用
最终,我尝试了一个 语句(见下文),但无法设法必须工作,除非我写一个
Define PATH_A_ACTIVATED true
但是反之不行(看起来还是定义了,不管值是多少):
Define PATH_A_ACTIVATED false
因此,到目前为止,我无法执行此操作。
这是我最新的(非工作)尝试,尝试从环境变量中查询一个值并将其与 Define 结合:
SetEnv PARAMATER_A false
<If "! -T reqenv('PARAMATER_A')">
Define PATH_A_ACTIVATED true
</If>
<Else>
UnDefine PATH_A_ACTIVATED
</Else>
<IfDefine PATH_A_ACTIVATED>
ProxyPass "/someapp" "http://dv00001.someplace.fr/someapp"
ProxyPassReverse "/someapp" "http://dv00001.someplace.fr/someapp"
</IfDefine>
<IfDefine !PATH_A_ACTIVATED>
ProxyPass "/someapp/domain1" "http://dv00001.someotherplace.fr/someapp"
ProxyPassReverse "/someapp/domain1" "http://dv00001.someotherplace.fr/someapp"
ProxyPass "/someapp/domain2" "http://dv00001.someplace.fr/someapp"
ProxyPassReverse "/someapp/domain2" "http://dv00001.someplace.fr/someapp"
</IfDefine>
有什么想法吗?
【问题讨论】:
标签: apache proxy environment-variables mod-proxy