如何在Apache配置中包含基于环境变量的外部httpd.conf

时间:2011-06-01 19:21:19

标签: apache httpd.conf

我想在我的主Apache httpd.conf中包含一个或另一个外部httpd.conf文件,该文件基于外部设置的环境变量。

所以我想做点什么:

if $(DEV_ENV) == "main"
Include "first file"
if $(DEV_ENV) == "alt"
Include "second file"

我一直在查看mod_setenv模块,但这是用于在Apache配置中设置环境变量。 如何使用环境变量并对其值进行比较?

2 个答案:

答案 0 :(得分:2)

很抱歉,你不能在包含上做这种动态逻辑。然而,Debian版本肯定允许通过替换模式直接引用环境变量,例如

Include conf/${APACHE_RUNTIME_TYPE}/*.conf

浏览“Apache2 envvars”以了解更多信息。

答案 1 :(得分:0)

看看ifdefine。这将评估在命令行上传递的选项,而不是环境变量。以下内容符合您的要求:

<IfDefine main>
Include "first file"
</IfDefine>
<IfDefine alt>
Include "second file"
</IfDefine>