unix-linux:ubuntu:ubuntu-14-04-lts-trusty-tahr:how-to-install-lemp-web-server-on-ubuntu-14-04:setup-php5-and-php-fpm-for-nginx
Различия
Показаны различия между двумя версиями страницы.
Предыдущая версия справа и слеваПредыдущая версияСледующая версия | Предыдущая версияПоследняя версияСледующая версия справа и слева | ||
unix-linux:ubuntu:ubuntu-14-04-lts-trusty-tahr:how-to-install-lemp-web-server-on-ubuntu-14-04:setup-php5-and-php-fpm-for-nginx [28.03.2016 16:14] – [Глобальные параметры сервисов PHP-FPM] Алексей Максимов | unix-linux:ubuntu:ubuntu-14-04-lts-trusty-tahr:how-to-install-lemp-web-server-on-ubuntu-14-04:setup-php5-and-php-fpm-for-nginx [28.03.2016 19:35] – [Дополнительные источники информации] Алексей Максимов | ||
---|---|---|---|
Строка 104: | Строка 104: | ||
< | < | ||
+ | \\ | ||
+ | ==== Подключение модулей PHP ==== | ||
+ | |||
+ | Посмотреть какие модули php будут загружаться можно в каталоге **/ | ||
+ | Доступные для загрузки модули можно найти в каталоге **/ | ||
+ | Большинство модулей подключаются автоматически при установке. | ||
+ | Пример подключения модуля вручную | ||
+ | |||
+ | < | ||
+ | |||
+ | Для вступления изменённых параметров в силу перезапустим службу **php5-fpm**: | ||
+ | |||
+ | < | ||
+ | |||
+ | \\ | ||
+ | ==== Настройка пулов PHP-FPM ==== | ||
+ | |||
+ | Дефолтный пул в файле sudo nano **/ | ||
+ | Если планируется запуск всего одного сайта, то можно ограничиться настройкой файла **www.conf**. | ||
+ | В нашем случае сайтов планируется к использованию несколько. | ||
+ | Создадим отдельные пулы под разные сайты скопировав их из дефолтного, | ||
+ | |||
+ | < | ||
+ | sudo cp / | ||
+ | sudo cp / | ||
+ | sudo cp / | ||
+ | sudo cp / | ||
+ | sudo rm / | ||
+ | </ | ||
+ | |||
+ | Перед настройкой пулов нужно определиться с выбором типа сокета для работы пулов. | ||
+ | Есть два варианта: | ||
+ | * **Unix-сокет** (по умолчанию / | ||
+ | * **TCP-сокет** (по умолчанию 127.0.0.1: | ||
+ | |||
+ | Чтобы определиться с тем, какой тип сокета выбрать можно поизучать всяческие дебаты по этому поводу, | ||
+ | |||
+ | * [[http:// | ||
+ | * [[http:// | ||
+ | |||
+ | Я остановил свой выбор на Unix-сокете, | ||
+ | |||
+ | Для того, чтобы каждый отдельный сайт использовал свой сокет, создадим в системе пользователей, | ||
+ | |||
+ | < | ||
+ | sudo useradd -g www-pool-root www-pool-root | ||
+ | |||
+ | sudo groupadd www-pool-blog | ||
+ | sudo useradd -g www-pool-blog www-pool-blog | ||
+ | |||
+ | sudo groupadd www-pool-forum | ||
+ | sudo useradd -g www-pool-forum www-pool-forum | ||
+ | |||
+ | sudo groupadd www-pool-wiki | ||
+ | sudo useradd -g www-pool-wiki www-pool-wiki | ||
+ | </ | ||
+ | |||
+ | Пример конфигурационного файла пула под один из сайтов (блог Wordpress) **/ | ||
+ | |||
+ | <file bash / | ||
+ | [php-fpm-pool-blog] | ||
+ | |||
+ | # Пользователь запуска пула | ||
+ | user = www-pool-blog | ||
+ | |||
+ | # Группа запуска пула | ||
+ | group = www-pool-blog | ||
+ | |||
+ | # Расположение сокета | ||
+ | listen = / | ||
+ | |||
+ | # Очередь клиентских подключений | ||
+ | listen.backlog = 65535 | ||
+ | |||
+ | # Права назначаемые на файл сокета | ||
+ | listen.owner = www-pool-blog | ||
+ | |||
+ | # Права назначаемые на файл сокета | ||
+ | # Должна быть указана основная группа пользователя, | ||
+ | # от имени которого стартует nginx | ||
+ | listen.group = www-data | ||
+ | |||
+ | # Права назначаемые на файл сокета | ||
+ | listen.mode = 0660 | ||
+ | |||
+ | # Очередь запросов для каждого дочернего процесса внутри пула. | ||
+ | # Помогает предотвратить утечки памяти при использовании сторонних библиотек. | ||
+ | # По умолчанию 0, то есть неограничено. | ||
+ | pm.max_requests = 500 | ||
+ | |||
+ | # Ограничение выполнения файлов по расширению имени | ||
+ | security.limit_extensions = .php | ||
+ | |||
+ | # Переопределение глобальных параметров PHP. | ||
+ | # Запрет вызова запуска Linux-команд и функции PHP allow_url_fopen | ||
+ | php_admin_value[disable_functions] = exec, | ||
+ | php_admin_flag[allow_url_fopen] = off | ||
+ | </ | ||
+ | |||
+ | Все прочие параметры, | ||
+ | Помимо указанных параметров, | ||
+ | |||
+ | Пример конфигурационного файла пула под другой сайт (форум phpBB) **/ | ||
+ | (отображены только изменённые или добавленные параметры конфига). В целом параметры аналогичны вышеприведённому примеру и этот пример приведён лишь для того, что бы были понятны отличия для настройки пулов под разные сайты. | ||
+ | |||
+ | <file bash / | ||
+ | [php-fpm-pool-forum] | ||
+ | user = www-pool-forum | ||
+ | group = www-pool-forum | ||
+ | listen = / | ||
+ | listen.backlog = 65535 | ||
+ | listen.owner = www-pool-forum | ||
+ | listen.group = www-data | ||
+ | listen.mode = 0660 | ||
+ | pm.max_requests = 500 | ||
+ | security.limit_extensions = .php | ||
+ | php_admin_value[disable_functions] = exec, | ||
+ | php_admin_flag[allow_url_fopen] = off | ||
+ | </ | ||
+ | |||
+ | |||
+ | При таких настройках пулов, в группу вида **www-data** должен будет входить пользователь, | ||
+ | |||
+ | |||
+ | После редактирования конфигурационных файлов пулов, для вступления изменений в силу, перезагрузим **php-fpm**: | ||
+ | |||
+ | < | ||
+ | |||
+ | Служба должна перезапуститься без ошибок, | ||
+ | |||
+ | < | ||
+ | |||
+ | srw-rw---- 1 www-pool-blog | ||
+ | srw-rw---- 1 www-pool-forum www-data 0 Mar 23 16:38 / | ||
+ | srw-rw---- 1 www-pool-root | ||
+ | srw-rw---- 1 www-pool-wiki | ||
+ | |||
+ | Как видим, сокеты созданы и теперь можно переходить к установке и настройке **nginx**. | ||
+ | \\ | ||
+ | ==== Дополнительные источники информации ==== | ||
+ | |||
+ | * [[http:// | ||
+ | * [[http:// | ||
+ | * [[https:// | ||
+ | |||
+ | ---- | ||
+ | |||
+ | {{: | ||
+ | |||
+ | {{tag> | ||
+ | |||
+ | ~~DISCUSSION~~ |
unix-linux/ubuntu/ubuntu-14-04-lts-trusty-tahr/how-to-install-lemp-web-server-on-ubuntu-14-04/setup-php5-and-php-fpm-for-nginx.txt · Последнее изменение: 28.03.2016 19:38 — Алексей Максимов