nginx

nginx и ядро linux

Товарищ, знай!
Если свежепоставленный nginx отдает php-скрипты как статику, а в логе его ошибок (/var/log/nginx/error_log) наблюдается строка:

accept4() failed (38: Function not implemented)

...то первым делом проверяй ядро (uname -a).

На ядре ниже 2.6.38 nginx не отрабатывает fastcgi_pass, что приводит к подобному результату.

Лучи добра и света хостерам с openvz на архаических ядрах.

Проблема с nginx (nginx does not have a start function)

Заполучив очередной дедик, столкнулся с проблемой: свежий nginx отказывался стартовать.

~# /etc/init.d/nginx start
ERR: nginx does not have a start function.

Ни на сайте Сысоева, ни в прочих местах решения проблемы (да даже упоминания о ней) не обнаружилось. Сравнение cat /etc/init.d/nginx разных билдов показало, что ныне ему требуется пакет baselayout2, который тянет за собой OpenRc.
Что ж.

~# emerge baselayout

После установки системе понадобится реконфигурация и ребут, причем реконфигурятся в том числе и сетевые файлы, и не всегда нормально (у меня после реконфига отказался запуститься апач, ну да и гори он огнём).

~# etc-update

Для начала советую скопировать все конфиги в безопасное место. Затем жмём -3, подтверждаем все перезаписи и reboot с замиранием сердца.
В случае успеха можно продолжать игрища с настройкой nginx. Если же что пошло не так - придётся брать мануал по миграции на OpenRC и править все конфиги руками.

RSS-материал