При высокой нагрузке на сервер (логи на моем сервере эта ошибка взорвала при 500 000 просмотров в сутки) в логах nginx может появится большое количество записей вида:
2012/04/11 09:05:48 [alert] 13265#0: accept() failed (24: Too many open files) 2012/04/11 09:05:48 [alert] 13265#0: accept() failed (24: Too many open files) 2012/04/11 09:05:48 [alert] 13265#0: accept() failed (24: Too many open files) 2012/04/11 09:05:48 [alert] 13265#0: accept() failed (24: Too many open files) 2012/04/11 09:05:48 [alert] 13265#0: accept() failed (24: Too many open files) 2012/04/11 09:05:48 [alert] 13265#0: accept() failed (24: Too many open files) 2012/04/11 09:05:48 [alert] 13265#0: accept() failed (24: Too many open files) 2012/04/11 09:05:48 [alert] 13265#0: accept() failed (24: Too many open files) 2012/04/11 09:05:48 [alert] 13265#0: accept() failed (24: Too many open files) 2012/04/11 09:05:48 [alert] 13265#0: accept() failed (24: Too many open files)
В интернете рекомендуют увеличить лимит операционной системы open files, но в случае nginx-а необходимо воспользоваться параметром worker_rlimit_nofile. Просто добавляем строку вида
worker_rlimit_nofile 16384;
в начало конфигурационного файла /etc/nginx/nginx.conf и перечитываем конфиг командой:
/etc/init.d/nginx reload