Как обновить и включить новую версию PHP

У многих возникает вопрос – как обновить версию PHP на сервере. Мы приведем пример как обновить версию до PHP 7.4 и/или PHP 8.1

Прежде всего убедитесь, что Ваши сайты и приложения на PHP поддерживают новую версию PHP на которую Вы желаете обновится. Многие, особенно самописные сайты, или не обновленные приложения популярных CMS не совместимы с новыми версиями PHP. Поэтому лишний раз перепроверите совместимость. Зайдите на сайты разработчиков CMS, прочитайте рекомендации или напишите им в поддержку. К примеру e Joomla 3, на сегодняшний день, многие плагины и модули не работают c 8-й версией PHP. Поэтому не спешите переходить на 8-ю версию.
Итак, если все проверили можем преступать.

Обновление до PHP 7.4

Обязательно сделайте резервную копию Ваших сайтов (файлы и базы данных)!

Данный мануал подойдет и для серверов работающих на VestaCP

Сначала добавим репозитории

add-apt-repository ppa:ondrej/php
add-apt-repository ppa:ondrej/apache2

Сделайте обновление

sudo apt update
sudo apt -y upgrade

Установим основной пакет PHP 7.4

apt install php7.4

После успешной установки, добавим необходимые модули для web сервера:

apt install php7.4-common php7.4-mysql php7.-xml php7.4-xmlrpc php7.4-curl php7.4-gd php7.4-imagick php7.4-cli php7.4-dev php7.4-imap php7.4-mbstring php7.4-opache php7.4-soap php7.4-zip php7.4-intl

Многие считают, что этого достаточно и не могут понять, почему на сервере по прежнему работает старая версия PHP. Что бы заработала новая, необходимо отключить старую и включить новую. Допустим у Вас стоит версия 5.4, тогда выполняем команду ее отключения:

a2dismod php5.4

Затем включаем новую, установленную 7.4:

a2enmod php7.4

Далее необходимо перезапустить apache:

systemctl restart apache2

Все, теперь на сервере будет работать новая версия PHP7.4
Для многих сайтов требуются дополнительные модули. Вы их можете установить дополнительно. Допустим для многих сайтов требуются модули gmp и bcmath. Устанавливаются командой:

apt install php7.4-bcmath php7.4-gmp

Каждый раз после установки дополнительных модуле PHP необходимо перезапускать веб-сервер:

systemctl restart apache2	

Если не думаете использовать старую версию, то можете ее удалить командой:

apt remove php5.4 
apt autoremove

Проверить версию PHP на сервере можно создав в корне сайта файл, допустим с именем web.php с кодом:

php

И открыть его в адресной строке www.ваш-сайт/web.php"

Так Вы сможете увидеть полную информацию о PHP и установленных модулях.

Установка PHP 8.1

8-я версия PHP устанавливается аналогично, достаточно заменить в команда, что выше, 7.4 на 8.1

Пример

apt install php8.1
apt install php8.1-common php8.1-mysql php8.1-xml php8.1-curl php8.1-gd php8.1-imagick php8.1-cli php8.1-dev php8.1-imap php8.1-mbstring php8.1-opcache php8.1-soap php8.1-zip php8.1-intl

Не забудьте включить 8-ю версию PHP, прежде отключив старую 7.4

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

Leave a comment

Make sure you enter all the required information, indicated by an asterisk (*). HTML code is not allowed.