Linux две версии php

Установка нескольких версии PHP в Linux (Ubuntu, CentOS)

В настоящее время существует несколько поддерживаемых версии PHP, реальности использовать можно и нужно только две версии PHP 7.4 для старых сайтов и 8.1 для новых проектов.

В этой статье объясняется, как установить ВСЕ поддерживаемые версии PHP с наиболее востребованными расширениями PHP для веб серверов Apache и Nginx.

Если вы используйте любую панель управления хостингом, тогда не делайте того что написано в этой статье, а изучите документацию к своей панели управления.

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

Руководство тестировалось для Ubuntu 22.04 LTS Jammy.

В Ubuntu для установки всех версий PHP используется репозиторий Ondřej Surý PPA. Репозиторий ondrej/php PPA содержит более актуальные версии PHP, чем официальные репозитории Ubuntu, а также позволяет устанавливать несколько версий PHP в одной системе.

Предварительно в вашей системе должна быть установлен утилита apt-add-repository, которая позволяет добавлять внешние репозитории:

apt install software-properties-common
add-apt-repository ppa:ondrej/php

Чтобы установить любые модули PHP, просто укажите версию PHP и используйте функцию автозаполнения (жмем клавишу Tab) для просмотра всех модулей. Ниже список вариантов установки нужной вам версии PHP:

apt install php5.6 [PHP 5.6] apt install php7.0 [PHP 7.0] apt install php7.1 [PHP 7.1] apt install php7.2 [PHP 7.2] apt install php7.3 [PHP 7.3] apt install php7.4 [PHP 7.4] apt install php8.0 [PHP 8.0]
apt install php5.6-fpm [PHP 5.6] apt install php7.0-fpm [PHP 7.0] apt install php7.1-fpm [PHP 7.1] apt install php7.2-fpm [PHP 7.2] apt install php7.3-fpm [PHP 7.3] apt install php7.4-fpm [PHP 7.4] apt install php8.0-fpm [PHP 8.0]
php -v PHP 8.1.6 (cli) (built: May 17 2022 16:46:54) (NTS) Copyright (c) The PHP Group Zend Engine v4.1.6, Copyright (c) Zend Technologies with Zend OPcache v8.1.6, Copyright (c), by Zend Technologies

Чтобы изменить версию PHP по умолчанию используйте утилиту update-alternatives, в примере ниже сделаем основной версией PHP 7.1

update-alternatives --set php /usr/bin/php7.1

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

Для инсталляции несколько версии PHP в CentOS вы можете использовать Remi’s RPM repository или репозиторий SCL (Software Collections). В мануале будем использовать будем репозиторий Remi, так как в нем поддерживается большее количество разных версий PHP.

Читайте также:  Usb to hdmi adapter linux

Предварительно установите репозиторий epel

yum -y install epel-release
wget https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm wget https://rpms.remirepo.net/enterprise/remi-release-7.rpm rpm -Uvh remi-release-7.rpm epel-release-latest-7.noarch.rpm
dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm dnf install https://rpms.remirepo.net/enterprise/remi-release-8.rpm

Для переключения версий PHP (только в текущей консоли) по умолчанию используйте утилиту scl (ключ l выводит список версий php):

$ scl enable php82 bash $ php -v PHP 7.2.8 (cli) (built: Jul 17 2018 05:35:43) ( NTS )

Жесткое изменения на уровне ОС PHP по умолчанию:

rm /usr/bin/php cp /opt/remi/php82/root/usr/bin/php /usr/bin/php

Тестирование вместо Заключения

Для того чтобы узнать какая версия PHP подключена для вашего сайта используйте phpinfo.

Источник

Установка нескольких версий PHP на Ubuntu 18.04.3 LTS

В данной статье мы установим несколько версий PHP на наш сервер Ubuntu 18.04.3 LTS и рассмотрим команды для переключения между версиями.

Начнем с обновления пакетов:

sudo apt-get update sudo apt-get upgrade

Установка версии PHP, которая идет по умолчанию

 PHP 7.2.19-0ubuntu0.18.04.2 (cli) (built: Aug 12 2019 19:34:28) ( NTS ) Copyright (c) 1997-2018 The PHP Group Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies with Zend OPcache v7.2.19-0ubuntu0.18.04.2, Copyright (c) 1999-2018, by Zend Technologies

В процессе установки также были поставлены следующие пакеты:

Пакет Описание
php7.2 server-side, HTML-embedded scripting language (metapackage)
php7.2-cli command-line interpreter for the PHP scripting language
php7.2-common documentation, examples and common module for PHP
php7.2-json JSON module for PHP
php7.2-opcache Zend OpCache module for PHP
php7.2-readline readline module for PHP

Установим наиболее распространенные модули для PHP :

sudo apt-get install php-pear php7.2-dev php7.2-fpm php7.2-curl php7.2-gd php7.2-mbstring php7.2-mysql php7.2-xml php7.2-zip libapache2-mod-php7.2
Пакет Описание
libapache2-mod-php7.2 server-side, HTML-embedded scripting language (Apache 2 module)
php-pear PEAR Base System
php7.2-curl CURL module for PHP
php7.2-dev Files for PHP7.2 module development
php7.2-fpm server-side, HTML-embedded scripting language (FPM-CGI binary)
php7.2-gd GD module for PHP
php7.2-mbstring MBSTRING module for PHP
php7.2-mysql MySQL module for PHP
php7.2-xml DOM, SimpleXML, WDDX, XML, and XSL module for PHP
php7.2-zip Zip module for PHP
Читайте также:  Просмотр нагрузки сети linux

Посмотреть все установленные PHP пакеты можно командой:

Установка другой версии PHP

Установим PHP 7.3 , для этого добавим сторонний репозиторий Ondřej Surý , установив пакет:

sudo apt-get install software-properties-common

Теперь добавим репозиторий:

sudo add-apt-repository ppa:ondrej/php

После того, как, мы добавили репозиторий, перейдем к установке PHP 7.3 :

sudo apt-get install php7.3

Были поставлены следующие пакеты:

Пакет Описание
libapache2-mod-php7.3 server-side, HTML-embedded scripting language (Apache 2 module)
php7.3 server-side, HTML-embedded scripting language (metapackage)
php7.3-cli command-line interpreter for the PHP scripting language
php7.3-common documentation, examples and common module for PHP
php7.3-json JSON module for PHP
php7.3-opcache Zend OpCache module for PHP
php7.3-readline readline module for PHP

Установим дополнительные модули для PHP :

sudo apt-get install php7.3-dev php7.3-fpm php7.3-curl php7.3-gd php7.3-mbstring php7.3-mysql php7.3-xml php7.3-zip
 PHP 7.3.10-1+ubuntu18.04.1+deb.sury.org+1 (cli) (built: Oct 8 2019 05:33:38) ( NTS ) Copyright (c) 1997-2018 The PHP Group Zend Engine v3.3.10, Copyright (c) 1998-2018 Zend Technologies with Zend OPcache v7.3.10-1+ubuntu18.04.1+deb.sury.org+1, Copyright (c) 1999-2018, by Zend Technologies

Таким образом в системе активирована версия PHP 7.3 .

Переключение между версиями PHP

Переключение происходит следующей командой:

sudo update-alternatives --set php /usr/bin/php7.2

Или же просто созданием символьной ссылки:

sudo ln -f -s /usr/bin/php7.3 /etc/alternatives/php

Источник

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

Обновлено

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

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

Установка PHP

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

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

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

Посмотреть, какая версия будет установлена из репозитория системы можно командой:

Читайте также:  Astra linux fly open

apt search —names-only ‘^php[.0-9]$’

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

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

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

apt install software-properties-common

.
FileNotFoundError: [Errno 2] No such file or directory: ‘gpg’

Устанавливаем gnupg-agent:

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

Выбор версии PHP по умолчанию

Посмотреть текущую версию php, которая работает по умолчанию можно командой:

Сменить версию по умолчанию:

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 to keep the current choice[*], or type selection number: 1

* так мы переключимся на php7.4.

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

Расширения устанавливаются с синтаксисом:

Для версии, которая идет по умолчанию в репозитории, установку можно выполнить так:

В остальных случаях обязательно указываем версию:

Настройка PHP

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

Например, для php версии 8.0, которая будет запускаться из командной строки, файл будет:

Источник

Оцените статью
Adblock
detector