В качестве значения можно использовать текст, переменные и их комбинации.
Если значение поля заголовка — пустая строка, то поле вообще не будет передаваться проксируемому серверу.
map $uri $a {
default "";
~^/some_uri "Basic YWxhZGRpbjpvcGVuc2VzYW1l";
}
proxy_set_header Authorization $a;
При поиске виртуального сервера по имени, если имени соответствует несколько из указанных вариантов, например, одновременно подходят и имя с маской, и регулярное выражение, будет выбран первый подходящий вариант в следующем порядке приоритета:
- точное имя
- самое длинное имя с маской в начале, например “*.example.com”
- самое длинное имя с маской в конце, например “mail.*”
- первое подходящее регулярное выражение (в порядке следования в конфигурационном файле)
server {
server_name ~^(?<dynamic>[a-z0-9\-]+)\.example.com$;
...
}
server {
server_name stage1.example.com;
....
}
...
update-grub