- Две версии php debian
- Включить PHP 8.1 в качестве версии по умолчанию
- Включить PHP 7.4 в качестве версии по умолчанию
- PHP 5.6 как в PHP версия в Apache2 по умолчанию
- Установка разных версий PHP на Linux Debian
- Установка PHP
- Установка базовой версии
- Установка определенной версии
- Выбор версии PHP по умолчанию
- Установка расширений
- Настройка PHP
- How to Switch between Multiple PHP Version on Debian 11/10
- Enable PHP 8.1 as Default Version
- Enable PHP 7.4 as Default Version
- Enable PHP 5.6 as Default Version
- Conclusion
Две версии php debian
В вашей системе, если вы установили несколько версий PHP (например, PHP 8.1, 8.0, 7.4, 7.3, 7.2, 7.1 и 5.6), только одна работает как PHP версия в Apache2 по умолчанию. Однако, если для текущей задачи вам нужно использовать специфическую версию PHP, не нужно удалять все прочие версии. Вы можете просто переключить версию PHP на используемую по умолчанию в Apache.
Допустим, вы установили PHP 8.1, PHP 7.4 и PHP 5.6 в нашу систему Debian. Вы можете использовать ту же инструкцию для других версий PHP, соответственно изменив команды.
Включить PHP 8.1 в качестве версии по умолчанию
Выполните следующую команду, чтобы отключить модуль Apache для других версий PHP.
sudo a2dismod php7.4 php5.6
Теперь включите модуль PHP 8.1 и перезапустите Apache2.
sudo a2enmod php8.1 sudo service apache2 restart
Включить PHP 7.4 в качестве версии по умолчанию
Чтоб модуль PHP 7.4 заработал как активная PHP версия в Apache2, можно сделать это, отключив модули для всех других установленных версий PHP.
Выполните следующие команды, чтобы отключить для Apache другие версии PHP.
sudo a2dismod php8.1 php5.6
Теперь включите модуль PHP 7.4 и перезапустите Apache2.
sudo a2enmod php7.4 sudo service apache2 restart
PHP 5.6 как в PHP версия в Apache2 по умолчанию
Разработчики PHP больше не поддерживают PHP 5.6 и настоятельно рекомендуют перейти на более позднюю версию PHP, например 7.4 или 8.1. Но вы все же можете установить и использовать PHP 5.6 в своей системе Debian, если вашему приложению требуется такая старая версия.
Выполните следующие команды, чтобы отключить другие версии PHP, такие как php 8.1, php7.4 и т. д.
sudo a2dismod php7.4 php8.1 php8.0
Теперь включите модуль PHP 5.6.
sudo a2enmod php5.6 sudo service apache2 restart
По инструкции вы можете изменить версию PHP по умолчанию, не удаляя другие версии.
Установка разных версий PHP на Linux Debian
Опубликовано: 23.03.2023
В Debian можно легко управлять несколькими версиями PHP. Мы рассмотрим процесс установки разных версий пакетов и управления ими.
Установка PHP
Установка базовой версии
Это самый простой способ. Каждая версия Debian в своем репозитории содержит соответствующую версию PHP. Установка выполняется одной командой:
Установка определенной версии
Если нам необходима версия PHP, которой нет в репозитории сисемы, выполняем установку дополнительного — sury.org. Сначала установим следующие пакеты:
- lsb-release — для определения версии релиза операционной системы.
- ca-certificates — набор корневых сертификатов.
- apt-transport-https — дополнение для возможности использовать репозитории по https.
- software-properties-common — утилита для работы с репозиториями.
- gnupg2 — для шифровки и дешифровки цифровых подписей. Нужна для работы с репозиториями.
Установим gpg ключ репозитория sury.org:
wget -qO — https://packages.sury.org/php/apt.gpg | apt-key add —
Создадим конфигурационный файл с настройкой репозитория sury.org:
echo «deb https://packages.sury.org/php/ $(lsb_release -sc) main» | tee /etc/apt/sources.list.d/sury-php.list
Теперь можно установить нужную версию интерпретатора:
Выбор версии PHP по умолчанию
Посмотреть текущую версию php, которая работает по умолчанию можно командой:
Сменить версию по умолчанию:
update-alternatives —config php
Значит у нас установлена всего одна версия PHP.
Мы должны увидеть что-то на подобие:
Selection Path Priority Status
————————————————————
* 0 /usr/bin/php8.1 81 auto mode
1 /usr/bin/php7.4 74 manual mode
2 /usr/bin/php8.1 81 manual mode
* в данном примере используется версия php8 как версия по умолчанию.
Для смены, система предложит нам выбрать версию из списка:
Press to keep the current choice[*], or type selection number: 1
* так мы переключимся на php7.4.
Установка расширений
Расширения устанавливаются с синтаксисом:
Для версии, которая идет по умолчанию в репозитории, установку можно выполнить так:
В остальных случаях обязательно указываем версию:
Настройка PHP
В Ubuntu настройки PHP находятся в разных файлах — для каждой версии и для каждой системы, которая обрабатывает запросы.
Например, для php версии 8.1, которая будет запускаться из командной строки, файл будет:
How to Switch between Multiple PHP Version on Debian 11/10
On your system, if you have installed multiple versions of PHP (eg PHP 8.1, 8.0, 7.4, 7.3, 7.2, 7.1 and 5.6). PHP 7.2 is running as default PHP for Apache and CLI. For any requirement, you need to use PHP 5.6. Then you don’t need to remove PHP 7.2. You can simply switch your PHP version to default used for Apache and command line.
We assume you have installed multiple PHP version on your Debian system. Now you need to switch the active PHP version for CLI and Apache2. This tutorial will help you to switch between multiple PHP versions for Apache server and CLI on Debian.
We have installed PHP 8.1, PHP 7.4 and PHP 5.6 on our Debian system. You can use the same for other PHP versions by changes commands accordingly.
Enable PHP 8.1 as Default Version
You need to set PHP 8.1 as your active PHP version for CLI and Apache2 both. You can do this by disabling Apache2 modules for all other installed PHP versions and configure CLI using the update-alternatives command.
- For Apache:-
Run the following command to disable Apache module for other PHP versions.
sudo a2dismod php7.4 php5.6
sudo a2enmod php8.1
sudo service apache2 restart
sudo update-alternatives --set php /usr/bin/php8.1
sudo update-alternatives --set phar /usr/bin/phar8.1
sudo update-alternatives --set phar.phar /usr/bin/phar.phar8.1
sudo update-alternatives --set phpize /usr/bin/phpize8.1
sudo update-alternatives --set php-config /usr/bin/php-config8.1
Note – The phpize8.1 and php-config8.1 command is available in php8.1-dev package. This is more useful for compiling PHP modules using pecl.
Enable PHP 7.4 as Default Version
You need to set PHP 7.4 as your active PHP version for CLI and Apache2 both. You can do this by disabling Apache2 modules for all other installed PHP versions and configure CLI using the update-alternatives command.
- Apache:-
Run the following commands to disable Apache module for other PHP versions
sudo a2dismod php8.1 php5.6
sudo a2enmod php7.4
sudo service apache2 restart
sudo update-alternatives --set php /usr/bin/php7.4
sudo update-alternatives --set phar /usr/bin/phar7.4
sudo update-alternatives --set phar.phar /usr/bin/phar.phar7.4
sudo update-alternatives --set phpize /usr/bin/phpize7.4
sudo update-alternatives --set php-config /usr/bin/php-config7.4
Note – The phpize7.4 and php-config7.4 command is available in php7.4-dev package. This is more useful for compiling PHP modules using pecl.
Enable PHP 5.6 as Default Version
The developers of PHP are no longer supporting PHP 5.6. It is strongly recommended to upgrade to higher PHP version like 7.4 or 8.1. But still you can install and Use php 5.6 on your Debian system if your application required PHP 5.6. Let’s set PHP 5.6 as your default version for CLI and Apache2 both.
- Apache:-
Run the following commands to disable other PHP versions like (php 8.1, php7.4 etc) for Apache and command line.
sudo a2dismod php7.4 php8.1 php8.0
sudo a2enmod php5.6
sudo service apache2 restart
sudo update-alternatives --set php /usr/bin/php5.6
sudo update-alternatives --set phar /usr/bin/phar5.6
sudo update-alternatives --set phar.phar /usr/bin/phar.phar5.6
sudo update-alternatives --set phpize /usr/bin/phpize5.6
sudo update-alternatives --set php-config /usr/bin/php-config5.6
Note – The phpize5.6 and php-config5.6 command is available in php5.6-dev package. This is more useful for compiling PHP modules using pecl.
Conclusion
In this tutorial, you have learned about switching PHP versions on Debian system. You can change the default PHP version without uninstalling the other versions.