配置一:
location /foo {
set $a hello;
echo_exec /bar;
}
location /bar {
echo "a = [$a]";
}
请求 localhost:8080/foo
得到 a = [hello]
配置二:
location /main {
set $var main;
echo_location /foo;
echo_location /bar;
echo "main: $var";
}
location /foo {
set $var foo;
echo "foo: $var";
}
location /bar {
set $var bar;
echo "bar: $var";
}
请求 /main
结果是:
foo: foo
bar: bar
main: main
问题: 为什么配置一中的主请求的变量$a 在子请求中也能得到,而配置二中的 $var变量却是每个子请求自己的值,而不是主请求中的值呢?