====== PHP ======
===== Сведения =====
===== Установка =====
===== php7.1_fpm =====
Установка и связка модуля **php-fpm** с веб сервером [[:linux:nginx|Nginx]].\\
==== Установка ====
Добавляем репозиторий, например **packages.sury.org**:
# echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" | tee /etc/apt/sources.list.d/php.list
Импортируем ключ:
# curl -sSL -o /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg
# apt update
Устанавливаем:
# apt install -y php7.1 php7.1-cli php7.1-common
Либо с дополнительными модулями, которые могут пригодится:
# apt install php7.1-cli php7.1-curl php7.1-fpm php7.1-gd php7.1-intl php7.1-json php7.1-mbstring php7.1-mcrypt php7.1-pdo-mysql php7.1-xml php7.1-zip
==== Конфигурация ====
Примерный конфиг php-fpm для пула www.conf на виртуальной машине с 1Gb памяти.
[www]
listen = /var/run/php-fpm/php-fpm.sock
listen.allowed_clients = 127.0.0.1
listen.mode = 0660
listen.owner = nginx
listen.group = nginx
user = nginx
group = nginx
; как будут создаваться новые рабочие процессы
pm = dynamic
; максимальное количество рабочих процессов
pm.max_children = 15
; число запущенных процессов при старте сервера
pm.start_servers = 6
; минимальное и максимальное количество процессов в простое
pm.min_spare_servers = 4
pm.max_spare_servers = 8
slowlog = /var/log/php-fpm/www-slow.log
pm.max_requests = 250
php_admin_value[error_log] = /var/log/php-fpm/www-error.log
php_admin_flag[log_errors] = on
php_value[session.save_handler] = files
php_value[session.save_path] = /var/lib/php/session
pm.status_path = /status
**Пользователь и группа** должны быть указаны те же, что указаны в настройках [[:linux:nginx|Nginx]]