Поиск по сайту:

Как установить PHP 8.4 на Rocky/AlmaLinux 9|8


PHP 8.4 еще не готов к выпуску в продакшн, но альфа-версии уже доступны для тестирования и обмена отзывами с командой разработчиков. В этой статье мы установим PHP 8.4 на Rocky Linux/AlmaLinux, и тот же процесс должен работать для версий CentOS Stream 9 или 8. В последней статье мы рассматривали установку PHP 8.4 на Ubuntu Linux. Ожидаемые изменения и новые функции PHP 8.4 можно посмотреть по следующим ссылкам/ресурсам:

  • Страница PHP.Watch
  • Новости Laravel

Также хорошей практикой является выполнение этой установки на только что созданном экземпляре Rocky/AlmaLinux, чтобы избежать повреждения вашей активной системы с приложениями, обслуживающими живой трафик.

Добавьте репозитории EPEL и REMI

Сначала нам нужно добавить репозитории EPEL и REMI в систему.

  • Добавить репозиторий EPEL
sudo dnf -y install epel-release
  • Установите репозиторий REMI
## EL 9-based systems ##
sudo dnf install -y https://rpms.remirepo.net/enterprise/remi-release-9.rpm

## EL 8-based systems ##
sudo dnf install -y https://rpms.remirepo.net/enterprise/remi-release-8.rpm

Проверку можно выполнить, перечислив доступные репозитории в системе.

$ sudo dnf repolist
repo id                                                                                                            repo name
appstream                                                                                                          Rocky Linux 8 - AppStream
baseos                                                                                                             Rocky Linux 8 - BaseOS
epel                                                                                                               Extra Packages for Enterprise Linux 8 - x86_64
extras                                                                                                             Rocky Linux 8 - Extras
remi-modular                                                                                                       Remi's Modular repository for Enterprise Linux 8 - x86_64
remi-safe                                                                                                          Safe Remi's RPM repository for Enterprise Linux 8 - x86_64

Возможно, вам потребуется включить репозиторий remi-safe, который содержит нестабильные программные пакеты.

sudo dnf config-manager --set-enabled remi-safe

Установите PHP 8.4 на Rocky/AlmaLinux/CentOS Stream

После добавления двух репозиториев можно выполнить установку PHP 8.4 на вашу локальную систему. Чтобы узнать о последних доступных версиях PHP в системе, выполните следующую команду:

sudo dnf module list php

Установите PHP 8.4, выполнив следующую команду:

sudo dnf install php84

Вам будет предложено принять установку, введите y и нажмите <ENTER>

Dependencies resolved.
===================================================================================================================================================================================================================================================================================
 Package                                                            Architecture                                          Version                                                                                   Repository                                                Size
===================================================================================================================================================================================================================================================================================
Installing:
 php84                                                              x86_64                                                8.4-1.el8.remi                                                                            remi-safe                                                8.0 k
Installing dependencies:
 capstone                                                           x86_64                                                4.0.2-5.el8                                                                               epel                                                     1.1 M
 environment-modules                                                x86_64                                                4.5.2-4.el8                                                                               baseos                                                   421 k
 httpd-filesystem                                                   noarch                                                2.4.37-65.module+el8.10.0+1840+b070a976.1                                                 appstream                                                 44 k
 libsodium                                                          x86_64                                                1.0.18-2.el8                                                                              epel                                                     162 k
 libxslt                                                            x86_64                                                1.1.32-6.el8                                                                              baseos                                                   249 k
 oniguruma5php                                                      x86_64                                                6.9.9-1.el8.remi                                                                          remi-safe                                                213 k
 php84-php-cli                                                      x86_64                                                8.4.0~alpha4-1.el8.remi                                                                   remi-safe                                                3.9 M
 php84-php-common                                                   x86_64                                                8.4.0~alpha4-1.el8.remi                                                                   remi-safe                                                785 k
 php84-runtime                                                      x86_64                                                8.4-1.el8.remi                                                                            remi-safe                                                1.1 M
 scl-utils                                                          x86_64                                                1:2.0.2-16.el8                                                                            appstream                                                 46 k
 tcl                                                                x86_64                                                1:8.6.8-2.el8                                                                             baseos                                                   1.1 M
Installing weak dependencies:
 php84-php-fpm                                                      x86_64                                                8.4.0~alpha4-1.el8.remi                                                                   remi-safe                                                2.0 M
 php84-php-mbstring                                                 x86_64                                                8.4.0~alpha4-1.el8.remi                                                                   remi-safe                                                553 k
 php84-php-opcache                                                  x86_64                                                8.4.0~alpha4-1.el8.remi                                                                   remi-safe                                                529 k
 php84-php-pdo                                                      x86_64                                                8.4.0~alpha4-1.el8.remi                                                                   remi-safe                                                159 k
 php84-php-sodium                                                   x86_64                                                8.4.0~alpha4-1.el8.remi                                                                   remi-safe                                                104 k
 php84-php-xml                                                      x86_64                                                8.4.0~alpha4-1.el8.remi                                                                   remi-safe                                                889 k
Enabling module streams:
 httpd                                                                                                                    2.4

Transaction Summary
===================================================================================================================================================================================================================================================================================
Install  18 Packages

Total download size: 13 M
Installed size: 53 M
Is this ok [y/N]: y

Обратите внимание, что эта установка производится через SCL и она независима от вашей системы, сохраняя базовую ОС в безопасности. Несколько моментов, на которые стоит обратить внимание:

  • Установка находится в каталоге /opt/remi/php84
  • Файлы конфигурации размещаются в директории /etc/opt/remi/php84

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

$ php84 --version
PHP 8.4.0alpha4 (cli) (built: Aug  1 2024 00:50:38) (NTS gcc x86_64)
Copyright (c) The PHP Group
Zend Engine v4.4.0-dev, Copyright (c) Zend Technologies
    with Zend OPcache v8.4.0alpha4, Copyright (c), by Zend Technologies

Установить расширения PHP 8.4

Используйте команды ниже, чтобы установить расширение PHP 8.4.

sudo dnf install php84-<extension>

Давайте рассмотрим пример, где мы устанавливаем расширения mysqlnd и zip.

sudo dnf install php84-php-mysqlnd php84-php-zip

Чтобы вывести список установленных модулей, выполните следующую команду:

$ php84 --modules
[PHP Modules]
bz2
calendar
Core
ctype
curl
date
dom
exif
fileinfo
filter
ftp
gettext
hash
iconv
json
ldap
libxml
mbstring
mysqli
mysqlnd
openssl
pcntl
pcre
PDO
pdo_mysql
pdo_sqlite
Phar
random
readline
Reflection
session
SimpleXML
sockets
sodium
SPL
sqlite3
standard
tokenizer
xml
xmlreader
xmlwriter
xsl
Zend OPcache
zip
zlib

[Zend Modules]
Zend OPcache

Мы будем обновлять эту статью, когда выйдет официальная стабильная версия PHP 8.4. Следите за обновлениями.