Tìm kiếm trang web

Cách Cài Đặt PHP 8.4 trên Rocky/AlmaLinux 9|8


PHP 8.4 chưa sẵn sàng cho phát hành bản chính thức nhưng các phiên bản alpha đã có sẵn để thử nghiệm và chia sẻ phản hồi với đội ngũ phát triển. Trong bài viết này, chúng ta sẽ cài đặt PHP 8.4 trên Rocky Linux/AlmaLinux và quy trình tương tự cũng nên áp dụng cho các phiên bản CentOS Stream 9 hoặc 8. Trong bài viết trước, chúng ta đã đề cập đến việc cài đặt PHP 8.4 trên Ubuntu Linux. Để biết các thay đổi và tính năng dự kiến của PHP 8.4, hãy xem các liên kết/nguồn tài nguyên sau:

  • Trang PHP.Watch
  • Tin tức Laravel

Cũng là một thói quen tốt khi thực hiện cài đặt này trên một phiên bản mới được cung cấp của Rocky/AlmaLinux để tránh làm hỏng hệ thống đang hoạt động của bạn với các ứng dụng đang phục vụ lưu lượng trực tiếp.

Thêm các kho EPEL và REMI

Đầu tiên, chúng ta cần thêm các kho EPEL và REMI vào hệ thống.

  • Thêm kho lưu trữ EPEL
sudo dnf -y install epel-release
  • Cài đặt kho 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

Việc xác thực có thể được thực hiện bằng cách liệt kê các kho lưu trữ có sẵn trong hệ thống.

$ 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

Bạn có thể được yêu cầu bật kho remi-safe chứa các gói phần mềm không ổn định.

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

Cài đặt PHP 8.4 trên Rocky/AlmaLinux/CentOS Stream

Sau khi thêm hai kho lưu trữ, việc cài đặt PHP 8.4 có thể được thực hiện trên hệ thống cục bộ của bạn. Để tìm hiểu về các phiên bản PHP mới nhất có sẵn trong hệ thống, hãy chạy lệnh sau:

sudo dnf module list php

Cài đặt PHP 8.4 bằng cách chạy lệnh dưới đây:

sudo dnf install php84

Bạn sẽ được nhắc chấp nhận cài đặt, gõ y và nhấn <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

Lưu ý rằng việc cài đặt này là từ SCL và nó hoạt động độc lập với hệ thống của bạn, giúp giữ an toàn cho hệ điều hành gốc. Một vài điểm cần lưu ý:

  • Cài đặt nằm trong thư mục /opt/remi/php84
  • Các tệp cấu hình được đặt bên trong thư mục /etc/opt/remi/php84

Để xem phiên bản PHP 8.4 đã cài đặt, sử dụng lệnh:

$ 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

Cài đặt các tiện ích mở rộng PHP 8.4

Sử dụng các lệnh dưới đây để cài đặt một tiện ích mở rộng PHP 8.4.

sudo dnf install php84-<extension>

Hãy xem xét một ví dụ nơi chúng ta đang cài đặt các tiện ích mở rộng mysqlnd và zip.

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

Để liệt kê các module đã được liệt kê, hãy chạy lệnh sau:

$ 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

Chúng tôi sẽ cập nhật bài viết này khi phiên bản chính thức, ổn định của PHP 8.4 được phát hành. Hãy đón chờ các bản cập nhật.