# Обновление версии PHP на CentOS 8 stream

При установке PHP из стандартного репозитория CentOS устанавливается PHP v.7.2. Её возможностей достаточно для решения большинства задач, но если вам нужна более свежая версия PHP, мы расскажем, как обновить её.

Устанавливать новые версии PHP мы будем из репозитория remi. Это сторонний репозиторий, который содержит последние версии PHP, Apache, MySQL и многих других приложений, но в данном случае нас будет интересовать только PHP.

# Проверка версии PHP

Чтобы проверить версию PHP, введите в консоли управления сервером команду:

php -v

В результате на экране появится номер активной версии PHP.

Если вы настраивали сервер по нашей инструкции и выполнили все шаги, то проверить версию PHP можно, запустив скрипт phpinfo на своём сервере. В этом случае результат можно будет посмотреть в браузере:

«phpinfo»

# Добавление репозитория в список источников dnf

Начнём обновление с добавления репозитория remi в список репозиториев dnf:

sudo dnf install http://rpms.remirepo.net/enterprise/remi-release-8.rpm

Мы указываем ссылку для добавления репозитория для CentOS 8. Для 7 версии ссылка будет такой: http://rpms.remirepo.net/enterprise/remi-release-7.rpm.

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

dnf repolist
# Output
repo id                                 repo name
appstream                               CentOS Stream 8 - AppStream
baseos                                  CentOS Stream 8 - BaseOS
epel                                    Extra Packages for Enterprise Linux 8 - x86_64
epel-modular                            Extra Packages for Enterprise Linux Modular 8 - x86_64
epel-next                               Extra Packages for Enterprise Linux 8 - Next - x86_64
extras                                  CentOS Stream 8 - Extras
remi-modular                            Remi Modular repository for Enterprise Linux 8 - x86_64
remi-safe                               Safe Remi RPM repository for Enterprise Linux 8 - x86_64

Мы видим, что добавилось два репозитория: remi-modular и remi-safe, который включает в себя устаревшие или находящиеся в стадии разработки расширения для модулей.

# Обновление версии php

Чтобы обновить версию php, отключим текущую:

dnf module reset php:7.2

Вводим команду:

dnf module list php

Она выведет на экран список доступных для установки модулей. Результат выдачи будет примерно таким:


CentOS Stream 8 - AppStream
Name      Stream            Profiles                                          Summary
php       7.2 [d]           common [d], devel, minimal                        PHP scripting language
php       7.3               common [d], devel, minimal                        PHP scripting language
php       7.4               common [d], devel, minimal                        PHP scripting language
php       8.0               common [d], devel, minimal                        PHP scripting language

Remi Modular repository for Enterprise Linux 8 - x86_64
Name     Stream             Profiles                                          Summary
php      remi-7.2           common [d], devel, minimal                        PHP scripting language
php      remi-7.3           common [d], devel, minimal                        PHP scripting language
php      remi-7.4           common [d], devel, minimal                        PHP scripting language
php      remi-8.0 [e]       common [d], devel, minimal                        PHP scripting language
php      remi-8.1           common [d], devel, minimal                        PHP scripting language

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

dnf module enable php:remi-8.1

Теперь осталось только обновить версию:

dnf update

После завершения обновления можно проверить версию теми же способами: использовать консоль и команду php -v или через браузер и скрипт phpinfo:

«phpinfo2»

Установить более позднюю версию PHP можно и из стандартного репозитория CentOS, но самой последней версии в нём нет.