/ISPmanager /Обновление native версии php на ISPmanager с Debian/Ubuntu
По умолчанию, на серверах с панелью управления ISPmanager и операционной системой debian или ubuntu, устанавливается нативная версия PHP 7.0 или 7.2. Для различных целей данная версия PHP может не подходить, поэтому произведем обновление native php до более актуальной версии..
1. Выполним следующие команды под root в ssh на сервере:
apt-get update apt -y install software-properties-common # команда ниже - для Ubuntu, для Debian 8 и 9 не подходит add-apt-repository ppa:ondrej/php # команда для Debian >= 8, для Ubuntu не используется echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" >> /etc/apt/sources.list.d/ppa-php.list apt-get update apt-get install php7.4 php7.4-bz2 php7.4-cgi php7.4-cli php7.4-common php7.4-curl php7.4-fpm php7.4-gd php7.4-intl php7.4-json php7.4-mbstring php7.4-mysql php7.4-opcache php7.4-pspell php7.4-readline php7.4-xml php7.4-zip libapache2-mod-php7.4 a2dismod php7.2 a2enmod php7.4
В данной команде приведен пример установки php версии 7.4 как нативной на сервере. Если вы хотите сделать нативной другую версию php, то вместо 74 необходимо указать другое значение, например — 73 для 7.3 и так далее.
Теперь проверка версии php на сервере через консоль, покажет новую версию PHP:
php -v
2. Откроем следующий файл:
nano /usr/local/mgr5/etc/conf.d/php.conf
Меняем все содержимое файла на следующее:
path php-cgi /usr/bin/php-cgi path php_bin /usr/bin/php path php_cfg /etc/php/7.4/cgi/conf.d path php_apache_ini /etc/php/7.4/apache2/php.ini path php_ini /etc/php/7.4/cgi/php.ini path php_ext /usr/lib/php/20190902 path php_ver 74 path php_cfg_cgi /etc/php/7.4/cgi/conf.d path php_cfg_apache /etc/php/7.4/apache2/conf.d path enabled_mod_dir /etc/apache2/mods-enabled path available_mod_dir /etc/apache2/mods-available path nativeconf php7.4
В данном примере указано содержимое файла для версии php 7.4. Если вы задали другую версию как нативную — то меняем 7.4 и 74 на нужную версию php.
Внимание! Строка path php_ext устанавливается в зависимости от содержимого директории /usr/lib/php/.
20190902 — это дата выпуска данной версии PHP. У более новых версий — она выше. В примере мы обновляли php 7.2 на php 7.4, содержимое папки /usr/lib/php/ выглядит следующим образом:
На скриншоте видно, что есть 2 директории с датой, это 20170718 и 20190902.
Директория 20170718 использовалась php 7.2 в конфиге, который мы ранее правили. Значит нам необходимо установить в значение path php_ext путь до новой папки с более свежей датой, в данном случае это 20190902.
3. Перезапустим все веб-сервера и панель управления.
service apache2 restart; service nginx restart; killall -9 core; service ihttpd restart
Существует несколько способов поменять версию PHP, в том числе и напрямую через командную строку сервера. Мы рассмотрим способы, которые предлагает панель управления ISPmanager. Она позволяет выполнить настройки через удобный web-интерфейс, не прибегая к ручным настройкам сервера.
- Версия PHP как модуль Apache
- Версия PHP как модуль CGI
- Если вам нужен модуль FastCGI
Версия PHP как модуль Apache
Чтобы использовать версию PHP как модуль Apache, установите её на сервер. Выполнить установку вы можете в разделе Настройки → Конфигурация ПО. Выберите нужную версию и нажмите кнопку Изменить, как указано на скриншоте.

В открывшемся окне установите галочку в поле ISPsystem модуль PHP для Apache версии 7.1 (указанная версия PHP зависит от выбранной вами) и нажмите кнопку Применить изменения.

После начнётся установка выбранной версии PHP. Когда установка будет завершена, перейдите в раздел Настройки → Настройки PHP, выберите установленную версию PHP и нажмите кнопку Как модуль Apache.

Готово! Теперь сайт использует установленную версию PHP через модуль Apache. Чтобы удостовериться, что на сервере используется установленная версия PHP, перейдите в раздел Сайты, информация указана в полях Режим работы PHP и Версия PHP.

Версия PHP как модуль CGI
Способ удобен, если вы размещаете несколько сайтов, для работы которых требуются разные версии PHP.
Важно! Использовать PHP в режиме CGI могут только пользователи с соответствующими правами. Чтобы проверить, имеет ли ваш пользователь эти права, перейдите в раздел Пользователи. Выберите пользователя, для которого вы настраиваете версию PHP, и нажмите кнопку Изменить. Далее найдите пункт Может использовать PHP в режиме CGI и установите напротив него галочку, после нажмите кнопку Ок. Если галочка установлена, переходите к следующему шагу.

Теперь нужно установить необходимую версию PHP на сервере. Для этого перейдите в раздел Настройки → Конфигурация ПО, выберите нужную версию PHP и нажмите кнопку Изменить.

Проверьте, чтобы в поле ISPsystem PHP версии 7.4 был выбран пункт PHP 7.4 CGI (указанная версия PHP зависит от выбранной вами). После этого нажмите кнопку Применить изменения.
По умолчанию можно использовать PHP-FPM — стоит галочка в пункте ISPsystem PHP 7.4 для PHP-FPM. Если вам не нужна эта возможность, уберите галочку.

По завершении установки перейдите в раздел Сайты, выберите сайт для которого требуется изменить версию PHP и нажмите кнопку Изменить. В открывшемся окне измените пункт Режим работы PHP на CGI,в пункте Версия PHP (CGI) установите необходимую версию PHP (изменить версию PHP можно, если на сервере установлено несколько версий). Для применения настроек нажмите кнопку Ок.

Чтобы проверить, используется ли установленная версия PHP, перейдите в раздел Сайты. Поля Режим работы PHP и Версия PHP сообщают о версии PHP, которая используется на сайте.

Если вам нужен режим FastCGI (Nginx + PHP-FPM)
— потребуется установка web-сервера Nginx. Чаще всего веб-сервер установлен по-умолчанию, проверьте и по необходимости установите в разделе Настройки → Конфигурация ПО → строка Веб-сервер (WWW) → кнопка Изменить.

Выбор версии PHP на VPS в ISPmanager
-
1.
Чтобы для домена появилась возможность выбора версии PHP, необходимо включить настройку PHP в режиме FastCGI (Apache). Откройте панель управления ISPmanager и перейдите в раздел Пользователи, кликните по имени пользователя, на котором находится домен, и нажмите Изменить:
-
2.
В блоке «Доступ» установите галочку Может использовать PHP в режиме FastCGI (Apache) и нажмите OK:
-
3.
Для выбора версии PHP, перейдите в раздел Сайты или WWW-домены, кликните по имени необходимого домена и нажмите Изменить:
-
4.
В блоке «PHP» в строке «Режим работы PHP» выберите FastCGI (Apache). В этом же разделе ISPmanager выберите или измените версию PHP. Нажмите OK:
Как активировать альтернативные версии PHP
Войдите в панель управления под пользователем «root» и перейдите в раздел Настройки — Конфигурация ПО. Убедитесь, что активирована возможность Альтернативные версии PHP. Если вы видите синюю лампочку, кликните по данной строке и нажмите Установить:
Готово, вы сменили версию PHP.
Установка ionCube на VPS-сервер
Перед установкой проверьте, возможно, ionCube уже установлен. Для этого соединитесь с сервером по SSH и выполните команду: php -m | grep ionCube.
Если в выводе команды ionCube отсутствует, можно переходить к установке.
Перед установкой выясните, какая ОС установлена на вашем сервере и какова её разрядность:
- команда для определения ОС:
cat /etc/issue - команда для определения разрядности:
uname -m
Все приведенные команды необходимо выполнять по SSH.
Установка ionCube на Debian/Ubuntu
-
1.
Скачайте дистрибутив ionCube:
- для 32-х разрядных ОС:
wget https://downloads.ioncube.com/loader_downloads/ioncube_loaders_lin_x86.tar.gz- для 64-х разрядных ОС (x86_64):
wget https://downloads.ioncube.com/loader_downloads/ioncube_loaders_lin_x86-64.tar.gz -
2.
Распакуйте загруженный архив:
-
3.
Переместите данные в /usr/local:
-
4.
Пропишите путь к модулю ioncube в конфигурационном файле PHP. В зависимости от версии PHP на вашем сервере прописываются разные пути к модулю ioncube. Для начала выясните, какая версия php установлена на вашем VPS при помощи команды
php -v, например:[root@151-248-126-120 ~]# php -v PHP 5.3.3 (cli) (built: May 10 2016 21:39:50) Copyright (c) 1997-2010 The PHP Group Zend Engine v2.3.0, Copyright (c) 1998-2010 Zend TechnologiesВ выводе команды видно, что установлена версия PHP 5.3.3. Значит, нужно прописывать путь до обработчика ioncube для версии php 5.3.
Чтобы прописать путь до обработчика ioncube, выполните команду:
echo "zend_extension=/usr/local/ioncube/ioncube_loader_lin_5.3.so" /etc/php5/conf.d/ioncube.iniОбратите внимание: в команде указан обработчик ioncube_loader_lin_5.3.so, так как в нашем случае на сервере стоит php версии 5.3. Если у вас php другой версии, обработчик будет иметь другой вид, например ioncube_loader_lin_5.2.so для версии php 5.2. Список всех обработчиков можно увидеть при помощи команды
ls /usr/local/ioncube/; -
5.
- Перезапустите веб-сервер apache:
/etc/init.d/apache2 restart- Проверьте, что ionCube установился:
Установка ionCube на CentOS
-
1.
Скачайте дистрибутив ionCube:
- для 32-х разрядных ОС:
wget http://downloads3.ioncube.com/loader_downloads/ioncube_loaders_lin_x86_5.1.2.tar.gz- для 64-х разрядных ОС (x86_64):
wget http://downloads3.ioncube.com/loader_downloads/ioncube_loaders_lin_x86-64_5.1.2.tar.gz -
2.
Распакуйте загруженный архив:
-
3.
Переместите модули ioncube в директорию с модулями PHP:
- для 32-х разрядных ОС:
mv ioncube /usr/lib/php/ioncube- для 64-х разрядных ОС (x86_64):
mv ioncube /usr/lib64/php/ioncube -
4.
Пропишите путь к модулю ioncube в конфигурационном файле PHP. В зависимости от версии PHP на вашем сервере, прописываются разные пути к модулю ioncube. Для начала выясните, какая версия php установлена на вашем VPS при помощи команды
php -v, например:[root@151-248-126-120 ~]# php -v PHP 5.3.3 (cli) (built: May 10 2016 21:39:50) Copyright (c) 1997-2010 The PHP Group Zend Engine v2.3.0, Copyright (c) 1998-2010 Zend TechnologiesВ выводе команды видно, что установлена версия PHP 5.3.3. Значит, нужно прописывать путь до обработчика ioncube для версии php 5.3.
Чтобы прописать путь до обработчика ioncube, выполните команду:
- для 32-х разрядных ОС:
echo "zend_extension=/usr/lib/php/ioncube/ioncube_loader_lin_5.3.so" /etc/php.d/ioncube.ini- для 64-х разрядных ОС (x86_64):
echo "zend_extension=/usr/lib64/php/ioncube/ioncube_loader_lin_5.3.so" /etc/php.d/ioncube.iniОбратите внимание: в обеих командах указан обработчик ioncube_loader_lin_5.3.so, так как в нашем случае на сервере стоит php версии 5.3. Если у вас php другой версии, обработчик будет иметь другой вид, например ioncube_loader_lin_5.2.so для версии php 5.2. Список всех обработчиков можно увидеть при помощи команды
ls /usr/lib/php/ioncube/(для 32-х разрядных ОС) иls /usr/lib64/php/ioncube/(для 64-х разрядных ОС); -
5.
- перезапустите веб-сервер apache:
/etc/init.d/httpd restart- проверьте, что ionCube установился:
Готово.
VPS с установленной CentOS
Закажите сервер с чистой CentOS или панелью управления ISPmanager всего за пару минут.
Заказать VPS c Centos

Спасибо за оценку!
Как мы можем улучшить статью?
Нужна помощь?
Напишите в службу поддержки!


