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

Обновлено и опубликовано Опубликовано:

В Ubuntu можно легко управлять несколькими версиями PHP. Мы рассмотрим процесс установки разных версий PHP и жонглирования ими.

Установка PHP

В зависимости от необходимой версии PHP и версии Ubuntu, подход к установке может отличаться.

Установка базовой версии

Это самый простой способ. Каждая версия Ubuntu в своем репозитории содержит соответствующую версию PHP.

Установка выполняется одной командой:

apt install php

Установка определенной версии

Если нам необходима версия PHP, которой нет в репозитории, выполняем установку дополнительного — для этого вводим две команды:

apt install software-properties-common

add-apt-repository ppa:ondrej/php

Теперь можно установить нужную версию интерпретатора:

apt-get install php7.4

apt-get install php8.0

* в данном примере 7.4 и 8.

Выбор версии 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

# Серверы # Ubuntu
Дмитрий Моск — частный мастер
Была ли полезна вам эта инструкция?

Да            Нет