Re: Не работает reload

Gena Makhomed gmm на csdoc.com
Пн Фев 28 12:50:41 MSK 2011


On 28.02.2011 11:31, SergeyZh wrote:

> Проблема такая: после изменения
> конфига и reload-a Nginx эти изменения не
> работают. Если сделать restart - все
> работает.
> Проблема появилась с ростом кол-ва
> виртуальных хостов (сейчас 520 шт) и
> соответствующим ростом размера
> конфигов, т.к. раньше все было Ок.
> Структура конфигов такая: 1 общий nginx.conf,
> в который включаются конфиги
> виртуальных хостов: include hosts/*.conf
> Соответственно изменения внутри этих
> hosts/*.conf не работают если не сделать restart
> Nginx.
>
> Версия сейчас 0.8.54, была 0.7.67.
> Проявлялось на обоих.
> Есть-ли какие-то варианты на что нужно
> посмотреть ?

надо добавить

ulimit -n 16384

в начало init-скрипта, которым запускаете nginx.
и после рестарта сервиса - nginx начнет нормально
реагировать и на команду service nginx reload

причина в том, что в Linux/UNIX стоит ограничение на количество
одновременно открытых файлов - не более 1024. это сделано для 
совместимости со старыми программами, которые будут глючить,
если установить больший лимит. вот в этот лимит master процесс
и упирается при попытке перечитать конфиг.

-- 
Best regards,
  Gena




Подробная информация о списке рассылки nginx-ru