Мультиверсионность PHP на Virtualmin
Если у вас установлено несколько версий PHP, Virtualmin позволит вам выбрать, какую версию использовать для данного домена или даже для каждого каталога.
Хотя эта функция может работать с любым дистрибутивом Linux, она лучше всего работает с 64-битным CentOS (6 и выше), использующим репозиторий CentOS Software Collections, или с Debian 10, использующим PPA, или с Ubuntu 14.04, использующим PPA.
И пускай твердят что всякие ISPManager, cPanel, Plesk, Vesta, BrainyCP, FastPanel удобнее. Может для кого-то и удобнее, но по функционалу для виртуального хостинга они проигрывают.
Репозиторий, предоставляющий эти пакеты, в настоящее время предоставляет только 64-битные пакеты. Если вы используете 32-битный CentOS, то, к сожалению, для этого нет PHP-пакетов.
У меня подцепилась из старых версий PHP 5.6, возможно что старые версии из репозитория уже того.
Установите репозиторий SCL:
Хотя эта функция может работать с любым дистрибутивом Linux, она лучше всего работает с 64-битным CentOS (6 и выше), использующим репозиторий CentOS Software Collections, или с Debian 10, использующим PPA, или с Ubuntu 14.04, использующим PPA.
И пускай твердят что всякие ISPManager, cPanel, Plesk, Vesta, BrainyCP, FastPanel удобнее. Может для кого-то и удобнее, но по функционалу для виртуального хостинга они проигрывают.
Установка PHP 7.3 на CentOS 6 и 7
Заметки о CentOS
CentOS имеет специальный репозиторий под названием «Коллекции программного обеспечения» («Software Collections», также SCL), который представляет собой систему для установки нескольких версий программного обеспечения на одном сервере. Используя пакеты, предоставляемые в репозитории коллекций программного обеспечения, можно установить более поздние версии PHP /opt/, сохраняя при этом версию PHP по умолчанию, установленную в /usr/.Репозиторий, предоставляющий эти пакеты, в настоящее время предоставляет только 64-битные пакеты. Если вы используете 32-битный CentOS, то, к сожалению, для этого нет PHP-пакетов.
У меня подцепилась из старых версий PHP 5.6, возможно что старые версии из репозитория уже того.
Установите репозиторий SCL:
yum -y install centos-release-scl
Установите пакеты PHP:yum -y install rh-php73-php-{curl,cli,pdo,fpm,zip,gd,xml,mysqlnd,opcache}
Далее переходите к конфигурации.Установка PHP 7.4 и 8.0 на CentOS 7
Установите репозиторий Remi и очистите кэш:yum -y install http://rpms.remirepo.net/enterprise/remi-release-7.rpm && yum clean all
Установите PHP — пакеты версии 7.4 и (или) 8.0:yum -y install php74-php-{curl,cli,pdo,fpm,zip,gd,xml,mysqlnd,opcache}
yum -y install php80-php-{curl,cli,pdo,fpm,zip,gd,xml,mysqlnd,opcache}
Далее переходите к конфигурации.Установка PHP 7.3, 7.4, 8.0 на CentOS 8
Установите репозиторий Remi и очистите кэш:dnf -y install http://rpms.remirepo.net/enterprise/remi-release-8.rpm && dnf clean all
Установите PHP — пакеты версии 7.3 и (или) 8.0:dnf -y install php73-php-{curl,cli,pdo,fpm,zip,gd,xml,mysqlnd,opcache}
dnf -y install php74-php-{curl,cli,pdo,fpm,zip,gd,xml,mysqlnd,opcache}
dnf -y install php80-php-{curl,cli,pdo,fpm,zip,gd,xml,mysqlnd,opcache}
Далее переходите к конфигурации.Установка PHP 5.6, 7.4, 8.0 на Debian 9/10
Включите репозиторий deb.sury.org:apt-get -y install apt-transport-https lsb-release ca-certificates curl
curl -sSL -o /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg
sh -c 'echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" > /etc/apt/sources.list.d/php.list'
Сделайте обновление всех репозиториев:apt update
Установите PHP пакеты версии 5.6, 7.4, 8.0:apt-get install php5.6-{curl,cli,pdo,fpm,zip,gd,xml,mysql,cgi}
apt-get install php7.4-{curl,cli,pdo,fpm,zip,gd,xml,mysql,cgi}
apt-get install php8.0-{curl,cli,pdo,fpm,zip,gd,xml,mysql,cgi}
Далее переходите к конфигурации.Установка PHP версии 5.6, 7.3, 8.0 на Ubuntu 16.04, 18.04 и 20.04
Установите PPA:add-apt-repository ppa:ondrej/php && apt-get update
Установите пакеты PHP:apt-get install php5.6-{curl,cli,pdo,fpm,zip,gd,xml,mysql,cgi}
apt-get install php7.3-{curl,cli,pdo,fpm,zip,gd,xml,mysql,cgi}
apt-get install php8.0-{curl,cli,pdo,fpm,zip,gd,xml,mysql,cgi}
Далее переходите к конфигурации.Настройка второй версии PHP в Virtualmin
После завершения установки второй версии PHP на вашем сервере вы можете убедиться, что Virtualmin видит ее, войдя в Virtualmin и нажав System Settings -> Re-Check Config. Вы должны увидеть что-то вроде этого:The following PHP versions are available : 5.6.25 (/opt/rh/rh-php56/root/usr/bin/php-cgi), 7.0.10 (/opt/rh/rh-php70/root/usr/bin/php-cgi)
PHP versions have changed to 5.6, 7.0, 7.1, 7.2, 7.3, 7.4, 8.0 since last check. Regenerating any missing php.ini files.
Вы можете настроить, какая из них является версией PHP по умолчанию, используемой на новых виртуальных серверах. По умолчанию используется самая новая доступная версия. Вы можете изменить это значение по умолчанию в разделе Системные настройки (System Settings) -> Шаблоны сервера (Server Templates) -> По умолчанию (Default) -> Параметры PHP (PHP Settings), и на этом экране вы можете установить версию PHP по умолчанию для использования в поле Версия PHP по умолчанию (Default PHP version).