Bueno, tengo una pregunta un poco diferente a esta : no quiero asignar dos variables al mismo tiempo, quiero asignar una variable usando otras dos como parámetros.
De hecho, he leído en la documentación sobre la directiva de mapas que:
Antes de la versión 0.9.0, solo se podía especificar una sola variable en el primer parámetro.
Entonces, como tengo nginx 1.8, espero poder usar más de una variable en el primer parámetro.
Esto me llevó a pensar que podría escribir algo como las dos últimas directivas de mapas en este ejemplo:
map $http_user_agent $bot {
default "";
"~*Googlebot" "yes";
"~*MJ12bot" "yes";
"~*bingbot" "yes";
etc.
}
map $request $bot $np {
default "" "";
default "yes" "";
"~*newproject" "" "yes";
"~*newproject" "yes" "";
}
map $bot $np $regular {
"" "" "yes";
"" "yes" "";
"yes" "" "";
}
Pero no funciona ( nginx -t
devuelve un
número inválido de argumentos en la directiva "mapa"
)
Entonces, ¿cómo es posible especificar varias variables en el primer parámetro? O, ¿qué significa realmente la documentación, si la entendí mal?