====== Ошибка NGINX - Число имен серверов или их длине - could not build the server_names_hash ====== Исправление ошибки в числе имен серверов или их длине Если задано большое число имён серверов, либо заданы необычно длинные имена, возможно потребуется скорректировать значения директив\\ ''server_names_hash_max_size'' и ''server_names_hash_bucket_size'' на уровне ''http''.\\ Значение по умолчанию директивы ''server_names_hash_bucket_size'' может быть равно ''32'', ''64'', либо другой величине, в зависимости от размера строки кэша процессора.\\ Если значение по умолчанию равно ''32'' и имя сервера задано как ''“too.long.server.name.example.org”'', то **nginx** откажется запускаться и выдаст сообщение об ошибке: could not build the server_names_hash, you should increase server_names_hash_bucket_size: 32 В этом случае следует увеличить значение директивы до следующей степени двойки: http { server_names_hash_bucket_size 64; ... Если задано большое число имён серверов, то будет выдано другое сообщение об ошибке: could not build the server_names_hash, you should increase either server_names_hash_max_size: 512 or server_names_hash_bucket_size: 32 В таком случае сначала следует попробовать установить ''server_names_hash_max_size'' в величину, близкую к числу имён серверов, и только если это не поможет или время запуска **nginx** станет неприемлемо большим, следует попытаться увеличить ''server_names_hash_bucket_size''. Если сервер является единственным сервером для слушающего порта, то ''nginx'' не будет проверять имена сервера вообще (а также не будет строить хэш-таблицы для слушающего порта). За одним исключением: если имя сервера задано регулярным выражением с выделениями, то **nginx’у** придётся выполнить это выражение, чтобы получить значения выделений.