zaLinux.ru

Решение проблемы с ошибкой «could not build optimal types_hash» в Nginx


При просмотре статуса службы сервера Nginx можно увидеть сообщение выделенное красным:

systemctl status nginx

При проверке конфигурационных файлов показывается, что синтаксис впорядке, но присутствует это же самое сообщение:

sudo nginx -t

Вывод:

2018/08/21 09:05:53 [warn] 1403#1403: could not build optimal types_hash, you should increase either types_hash_max_size: 1024 or types_hash_bucket_size: 64; ignoring types_hash_bucket_size
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

Это не ошибка, а предупреждение. Тем не менее чтобы оно не беспокоило, уберём его, донастроив Nginx.

В сообщении говориться, что сервер не может построить оптимальный types_hash, от нас требуется либо увеличить types_hash_max_size, который в данный момент установлен на 1024, либо увеличить types_hash_bucket_size, который в данный момент установлен на 64.


Обе эти переменные не установлены в конфигурационном файле, поэтому применяются их значения по умолчанию, те самые 1024 и 64.

Решение проблемы заключается в добавлении types_hash_bucket_size в nginx.conf, причём, если значение будет меньше 4096, то сервер так и будет продолжать жаловаться. Число 4096 делает сервер абсолютно счастливым и предупреждение исчезает.

Откройте файл nginx.conf и в секцию http добавьте:

	types_hash_max_size	4096;

Должно получиться примерно так:

После этого предупреждение исчезнет:


Рекомендуемые статьи:

Оставить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *