Версии PHP в CloudLinux

Материал из ISPWiki
Версия от 15:11, 12 мая 2017; Cher (обсуждение | вклад) (Первоначальная настройка)
Перейти к: навигация, поиск


Данная статья посвящена описанию работы модуля PHP в ОС CloudLinux.

Панель управления ISPmanager 5 Business предоставляет возможность использовать альтернативные версии PHP в ОС CloudLinux в двух режимах работы (CGI и LSAPI). В остальных режимах используется Алгоритм работы модуля "Настройка PHP" при изменении параметров

Режим работы CGI

Применение настроек PHP

CloudLinux предоставляет утилиту selectorctl для работы с настройками PHP.

  1. Пользователь панели управления применяет настройки PHP:
    1. Вызывается selectorctl с необходимыми параметрами
  2. Администратор панели управления применяет настройки PHP:
    1. Вносятся изменения в глобальный php.ini для конкретной версии PHP
    2. Вызывается "cagefsctl --rebuild-alt-php-ini" для применения изменений

Режим работы LSAPI

 Для того, чтобы иметь возможность использовать PHP в режиме LSAPI, необходимо сначала выбрать "Prefork" в качестве режим работы веб-сервера Apache ("Настройки кластера" ⇾ "Политики")

Конфигурация версии PHP с помощью модуля Apache "mod_lsapi" выполняется "на www-домен". У разных www-доменов одного пользователя версия PHP может быть разная и не зависит от того, какая версия PHP выбрана в данный момент для пользователя в phpselector.

Первоначальная настройка

Для того, чтобы выполнить первоначальную настройку LSAPI, панель управления узла кластера выполняет следующие действия:

  1. Установка lsphp:
    • yum install liblsapi liblsapi-devel mod_lsapi
    • /usr/bin/switch_mod_lsapi --setup
  2. Создание имён обработчиков для Apache:
    • создаётся файл /etc/container/php.handler
    • для каждой альтернативной версии PHP описывается в этом файле обработчик в виде:
    application/x-lsphp53 /opt/alt/php53/usr/bin/lsphp
  3. Для того, чтобы пользовательские настройки из phpselector работали в каждом www-домене независимо от текущей выбранной версии PHP для пользователя:
    • создётся файл /etc/cl.selector/symlinks.rules с содержимым:
    php.d.location = selector
    • выполняется команда /usr/bin/selectorctl --apply-symlinks-rules

Применение настроек www-домена

Для того, чтобы PHP для конкретного www-домена работал в режиме LSAPI, следует: 1. Разрешить пользователю использовать PHP в режиме LSAPI на форме редактирования пользователя. Также есть возможность указать, какая версия PHP будет использоваться по умолчанию в этом режиме 2. На форме редактирования www-домена указать режим рабты PHP как LSAPI и выбрать версию PHP

В конфигурационном файле www-домена в секции VirtualHost подключается обработчик PHP в виде:

 <FilesMatch "\.ph(p[3-5]?|tml)$">
   SetHandler application/x-lsphp53
 </FilesMatch>

Также в конфигурационном файле www-домена указываются дополнительные настройки аналогично настройкам для PHP в режиме модуля Apache

Настройки альтернативной версии PHP

Все настройки параметров и расширений PHP, выполняемые с помощью панели управления, применяются также для PHP в режиме модуля LSAPI

 Нативная версия PHP для работы в режиме LSAPI не используется