Установка MySQL, PHP и PHP-FPM под Debian linux

Установка MySQL:

Скачиваем PHP и патч PHP-FPM (выбрать в списке » php-fpm-0.6~5.2.patch» или в командной строке wget http://launchpad.net/php-fpm/master/0.6/+download/php-fpm-0.6~5.2.patch).
Распаковка php из архива

Патчим php

Тут возникли большие проблемы — после запуска ничего не выводит, но вроде выполняется. Оказалось — забыл «<" написать. Далее устанавливаем php

Указываем конфигурационные параметры

Пришлось повозиться с libxml, zlib, libjpeg, libpng, libmcrypt, mysql unix socket

Далее возимся с libevent (т.к. пишет Libevent minimum version >= 1.4.3 could not be found.):

Потом скачиваем новый libevent и устанавливаем:

))
(можно посмотреть эту статью)
В итоге всё ставится в /usr/local/lib/php/ (/usr/local/bin/ — CLI-бинарник).
Осталось прописать php-fpm в автозагрузку (я обошёлся без создания символической ссылки):

(см. Создание символической ссылки в linux).
Если при вводе php-fpm start ругается [ERROR] fpm_unix_conf_wp(), line 114: cannot get gid for group ‘nobody’, pool ‘default’, то нужно попробовать создать группу ‘nobody’:

Вроде бы всё.
Файл конфига — в /etc/php-fpm.conf , логи пишутся в /var/log/php-fpm.log, айди родительского процесса задано здесь — /var/run/php-fpm.pid. Сам php установлен здесь — /usr/local/include/php.

Полезные ссылки по теме:
официальная wiki проекта
faq по сборке php на debian
наткнулся на статью Установка PHP-FPM на Debian из пакетов — может кому понадобится
ещё 3 фака по установке и настройке связки php-fpm + nginx — 1 и 2, 3 (для freeBSD).

Кстати, долго выводилась надпись после того, как всё конфигурировалось:
«Thank you for using PHP.
Notice: Following unknown configure options were used:
—with-fpm
»
Дело было в забытом ключе patch -d php-5.2.11 -p1 < php-fpm-0.6~5.2.patch

3 Responses so far.

  1. Spasibo!

    Running «addgroup nobody» does indeed fix the error «cannot get gid for group ‘nobody’, pool ‘default'»

    Are you using nginx?

  2. bullgare:
    Yes, all this stuff is meant to be run with nginx.
  3. OZ:
    Спасибо!
    Ошибку

    Cannot find MySQL header files under /usr/lib. Note that the MySQL client library is not bundled anymore!

    исправил с помощью подсказанного Вами

    apt-get install libmysqlclient15-dev

LEAVE A COMMENT