В Ubuntu можно легко управлять несколькими версиями PHP. Мы рассмотрим процесс установки разных версий PHP и жонглирования ими.
Установка PHP
В зависимости от необходимой версии PHP и версии Ubuntu, подход к установке может отличаться.
Установка базовой версии
Это самый простой способ. Каждая версия Ubuntu в своем репозитории содержит соответствующую версию PHP.
Посмотреть, какая версия будет установлена из репозитория системы можно командой:
apt search —names-only ‘^php[.0-9]{3}$’
Установка выполняется одной командой:
apt install php
Установка определенной версии
Если нам необходима версия PHP, которой нет в репозитории, выполняем установку дополнительного — для этого вводим две команды:
apt install software-properties-common
add-apt-repository ppa:ondrej/php
Если мы получим ошибку:
…
FileNotFoundError: [Errno 2] No such file or directory: ‘gpg’Устанавливаем gnupg-agent :
apt install gnupg-agent
При получении ошибки:
AttributeError: ‘NoneType’ object has no attribute ‘people’
Выполняем установку:
apt install python3-launchpadlib
Теперь можно установить нужную версию интерпретатора. Для удобства, создадим переменную:
export PHP_VER=8.3
* предполагается, что мы будем ставить версию 8.3.
apt install php${PHP_VER}
Выбор версии PHP по умолчанию
Посмотреть текущую версию php, которая работает по умолчанию можно командой:
php -v
Сменить версию по умолчанию:
update-alternatives —config php
There are 2 choices for the alternative php (providing /usr/bin/php).
Selection Path Priority Status
————————————————————
* 0 /usr/bin/php8.0 80 auto mode
1 /usr/bin/php7.4 74 manual mode
2 /usr/bin/php8.0 80 manual mode
* в данном примере используется версия php8 как версия по умолчанию.
Для смены, система предложит нам выбрать версию из списка:
Press <enter> to keep the current choice[*], or type selection number: 1
* так мы переключимся на php7.4 .
Установка расширений
Расширения устанавливаются с синтаксисом:
apt install php<версия>-<расширение>
Для версии, которая идет по умолчанию в репозитории, установку можно выполнить так:
apt install php-mysqli
В остальных случаях обязательно указываем версию:
apt install php7.4-mysqli
Настройка PHP
В Ubuntu настройки PHP находятся в разных файлах — для каждой версии и для каждой системы, которая обрабатывает запросы.
Например, для php версии 8.0, которая будет запускаться из командной строки, файл будет:
vi /etc/php/8.0/cli/php.ini
для apache:
vi /etc/php/8.0/apache2/php.ini
для fpm:
vi /etc/php/8.0/fpm/php.ini
Читайте также
Дополнительная полезная информация: