|
Модуль ngx_http_map_module создаёт переменные,
значения которых зависят от значений других переменных.
Пример конфигурации
map $http_host $name {
hostnames;
default 0;
example.com 1;
*.example.com 1;
test.com 2;
*.test.com 2;
.site.com 3;
wap.* 4;
}
Директивы
|
синтаксис:
|
map
$переменная1
$переменная2 { ... }
|
|
умолчание:
|
—
|
|
контекст:
|
http
|
Создаёт переменную, значение которой
зависит от значения исходной переменной.
Директива поддерживает три специальных параметра:
default значение
-
задаёт значение для второй переменной, если значение
первой переменной не найдено.
hostnames
-
указывает, что в качестве исходных значений можно
использовать маску для первой или последней части имени хоста, например,
*.example.com 1;
example.* 1;
Вместо двух записей
example.com 1;
*.example.com 1;
можно использовать одну:
.example.com 1;
include файл
-
включает файл со значениями.
Включений может быть несколько.
|
синтаксис:
|
map_hash_bucket_size размер;
|
|
умолчание:
|
map_hash_bucket_size 32|64|128;
|
|
контекст:
|
http
|
Задаёт размер корзины в хэш-таблицах для переменных map.
Значение по умолчанию зависит от размера строки кэша процессора.
Подробнее смотрите в документе по
настройке хэшей.
|
синтаксис:
|
map_hash_max_size размер;
|
|
умолчание:
|
map_hash_max_size 2048;
|
|
контекст:
|
http
|
Задаёт максимальный размер хэш-таблиц для переменных map.
Подробнее смотрите в документе по
настройке хэшей.
|