У мене є наступний віртуальний хост
server
{
server_name abc.example.com;
root /var/www/test/;
index index.html;
}
Під час запуску nginx -s reload
я отримую таку помилку:
nginx: [emerg] не вдалося створити ім’я_сервера_гаш, слід збільшити сервер_імена_hash_bucket_size: 32
Те саме відбувається з будь-яким ім'ям сервера, що містить 15 і більше символів.
Якщо я встановив ім’я_сервера ab.example.com
(або будь-яке ім'я під 15 символів), проблема перестане проявлятися.
Щоб виправити це, я додав таке /etc/nginx/nginx.conf
(раніше не було визначено):
server_names_hash_bucket_size 64;
Якщо встановити його на 33, також працювало, але не 32.
Чому для імені сервера максимальна довжина за замовчуванням становить 14 символів?
Чи обмеження встановлено типовими налаштуваннями nginx або системою, на якій він працює?
Як ім’я_сервера_15 впливає на максимальний розмір хеш-відра? (у системі визначено лише 4 віртуальних хости)
/sys/devices/system/cpu/cpu0/cache/index0/coherency_line_size:64
/sys/devices/system/cpu/cpu0/cache/index1/coherency_line_size:64
/sys/devices/system/cpu/cpu0/cache/index2/coherency_line_size:64
grep "" /sys/devices/system/cpu/cpu?/cache/index?/coherency_line_size
?