使用 SetEnvIf 将变量分配给另一个变量

使用 SetEnvIf 将变量分配给另一个变量

Apache 2.2 缺少该<if>指令,因此我尝试通过为变量分配默认值来解决缺乏明确的 if/then 逻辑的问题,但如果请求标头包含 Origin 参数则替换它:

<IfModule mod_headers.c>
  SetEnvIfNoCase ORIGIN ".+" ORIGINVAR=ORIGIN
  SetEnvIfNoCase ORIGIN "^$" ORIGINVAR="*"
  Header always set Access-Control-Allow-Origin: %{ORIGINVAR}e
</IfModule>

但是,我无法分配 ORIGINVAR ORIGIN 值,我已尝试过:

  • ORIGIN
  • HTTP_ORIGIN
  • %{ORIGIN}e
  • %{ORIGIN}
  • "%{ORIGIN}e"
  • "%{ORIGIN}"

它们都只是返回精确的字符串,而不解析变量。

相关内容