Назад | Перейти на главную страницу

PHP-FPM для nginx на debian

Какой предпочтительный / рекомендуемый способ установки php-fpm на debian для использования с nginx? Я повсюду читал о пакете "php5-fpm", но он больше не доступен в официальных репозиториях debian.

Веб-сайт PHP-FPM (http://php-fpm.org/download/) говорит, что fpm теперь включен в ядро ​​php. Достаточно ли тогда установить "php5-common"? Но где же файлы конфигурации?

Другие рекомендуют установить текущую версию php и php-fpm с dotdeb.org. Представленные там версии обычно более свежие. Но безопасно ли это? Это хорошее репо для использования в производственной среде?

Буду признателен за любой совет.

PHP5-FPM поставляется с основным проектом PHP с июня 2010 года, но получил статус неэкспериментального только после выпуска 5.4.0RC2 менее года назад.1 Для Debian он доступен в Wheezy (сейчас тестируется) и выше.2, так как он не выпустил Squeeze. Когда-нибудь он может быть доступен в «официальных» сжатых архивах, но это все равно будет PHP 5.3.x.

На данный момент вам придется придерживаться пользовательских сборок, подобных тем, что на dotdeb.org если вам нужно запустить Debian Squeeze и вы не хотите компилировать все самостоятельно.

К вашему сведению, Ubuntu уже выпустила три стабильных выпуска, включая PHP-FPM.3

Как было предложено в первом ответе, я использовал пакеты с dotdeb.org. Чтобы предотвратить установку apt всех доступных пакетов из этого репо, я использовал apt-pinning в / etc / apt / preferences, как предлагается в этом ответ.

Мои настройки выглядят так:

security.pref

Pin: release l=Debian-Security
Pin-Priority: 1000
Package: *

stable.pref

Pin: release a=stable
Pin-Priority: 990
Package: *

dotdeb.pref

Package: *
Pin: release o=packages.dotdeb.org
Pin-Priority: 100

Package: libapache2-mod-php5 libapache2-mod-php5filter php-pear php5-cgi php5-cli php5-common php5-curl php5-dbg php5-dev php5-enchant php5-fpm php5-gd php5-gmp php5-imap php5-interbase php5-intl php5-ldap php5-mcrypt php5-mysql php5-odbc php5-pgsql php5-pspell php5-recode php5-snmp php5-sqlite php5-sybase php5-tidy php5-xmlrpc php5-xsl php5
Pin: release o=packages.dotdeb.org
Pin-Priority: 991

(создайте файлы sources.list соответственно, как показано в ответе по ссылке выше.)

При такой настройке пакеты dotdeb никогда не устанавливаются по умолчанию (поскольку безопасность по-прежнему имеет более высокий приоритет) и все "не-php" (например, nginx, redis, mysql, ..) пакеты не устанавливаются вообще. (приоритет: 100)

Чтобы установить ваши (желаемые) php-пакеты, запустите apt-get с -t чтобы указать репозиторий для установки, например как это:

apt-get install -t stable php5-fpm php5-common php5-cgi

(помните, что вы должны включить все зависимости в свой оператор установки!)

Вы, конечно, можете настроить эту настройку в соответствии с вашей ситуацией. Надеюсь, это поможет вам встать на правильный путь.

Узнать больше об apt-pinning в этом руководстве и на страница руководства.