![使用 SetEnvIf 将变量分配给另一个变量](https://linux22.com/image/660490/%E4%BD%BF%E7%94%A8%20SetEnvIf%20%E5%B0%86%E5%8F%98%E9%87%8F%E5%88%86%E9%85%8D%E7%BB%99%E5%8F%A6%E4%B8%80%E4%B8%AA%E5%8F%98%E9%87%8F.png)
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}"
它们都只是返回精确的字符串,而不解析变量。