Установка разных версий PHP на Linux Ubuntu

В 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

Читайте также

Дополнительная полезная информация:

1. Настройка времени сессий в PHP .

2. NGINX + Apache + MariaDB (MySQL) + PHP + PHP-FPM (fastCGI) + FTP + PHPMyAdmin + Memcached + Postfix на Ubuntu .

3. Установка разных версий PHP на Linux Debian .

EnglishRussianUkrainian