带有响应头的 SetEnvIfExpr

带有响应头的 SetEnvIfExpr

我想在特定响应头有值时设置一个环境变量。

但是当我这样做时它并没有设置变量。

Header add X-foo "bar"
<If "resp('X-foo') == 'bar'">
    Header add X-test-foobar "foobarnew"
</If>

它没有设置标题 X-test-foobar。

也许我没有正确理解它应该如何工作。我不太熟悉 apache 编程...我认为在 apache 环境中编程不是连续的,但我不知道如何使用响应标头的内容设置环境变量。

谢谢你的帮助,

中山

答案1

If Apache 处理过程中可能会过早评估以使用响应的属性。文档不清楚,目前我无法在其他地方找到。

Header指令处理较晚,因此可以使用响应。您只需expr向其添加条件:

Header add X-test-foobar "foobarnew" "expr=resp('X-foo') == 'bar'"

相关内容