Theo khảo sát của W2techs, có 79% tất cả các trang web sử dụng PHP làm ngôn ngữ lập trình phía máy chủ. Trên hết, có 67% các trang web sử dụng PHP phiên bản 7, sau 4 năm kể từ khi phát hành lần đầu. PHP là một trong những ngôn ngữ lập trình phía máy chủ phổ biến nhất cho các trang web. Một số ứng dụng web đáng chú ý dựa trên PHP như WordPress, Magento E-commerce, Wikipedia, Drupal, v.v.
Tại thời điểm này, phiên bản PHP 8 đã được phát hành với các tính năng và cải tiến bổ sung, bao gồm các đối số được đặt tên, kiểu hợp nhất, thuộc tính, quảng bá thuộc tính của hàm tạo, biểu thức khớp, toán tử nullsafe, JIT và các cải tiến trong hệ thống kiểu, xử lý lỗi và tính nhất quán.
Trong hướng dẫn này, bạn sẽ tìm hiểu cách cài đặt PHP 8 trên máy chủ Rocky Linux.
1. Trước khi thêm kho lưu trữ REMI, bạn phải thêm kho lưu trữ EPEL (Gói bổ sung cho Enterprise Linux) bằng cách thực hiện lệnh sau.
Gõ 'y' và nhấn 'Enter' để thêm kho lưu trữ EPEL.
2. Bây giờ hãy chạy lệnh bên dưới để thêm kho lưu trữ REMI cho Rocky Linux 8 / CentOS 8/ hoặc RHEL 8.
Gõ 'y' và nhấn 'Enter' một lần nữa để cài đặt kho lưu trữ REMI.
3. Sau khi cài đặt kho lưu trữ EPEL và REMI hoàn tất, hãy thực hiện lệnh sau để xác minh danh sách các kho lưu trữ khả dụng trên hệ thống Rocky Linux.
Bây giờ hãy đảm bảo rằng bạn nhận được đầu ra tương tự như bên dưới.
1. Trước khi tiếp tục, hãy đặt lại luồng mô-đun PHP bằng lệnh bên dưới.
Lần đầu tiên bạn chạy lệnh dnf sau khi thêm kho lưu trữ Remi, bạn sẽ được nhắc chấp nhận khóa gpg của kho lưu trữ Remi.
Nhập 'y' và nhấn 'Enter' để thêm khóa gpg Remi.
2. Bây giờ hãy kiểm tra các mô-đun PHP có sẵn trên hệ thống của bạn bằng lệnh sau.
Như được thấy bên dưới, có 2 kho lưu trữ luồng PHP. Kho lưu trữ Rocky Linux AppStream mặc định và kho lưu trữ mô-đun Remi. Cài đặt mặc định cho PHP là PHP 7.2 từ kho lưu trữ AppStream.
3. Bây giờ hãy thay đổi cài đặt mặc định của các gói PHP thành kho lưu trữ Remi PHP 8.x bằng lệnh.
Nhập 'y' và nhấn 'Enter' để bật kho lưu trữ Remi PHP 8.x và bạn đã sẵn sàng cài đặt PHP 8 trên Rocky Linux.
Bây giờ hãy nhập 'y' và nhấn 'Enter' để cài đặt PHP 8x.
2. Sau khi cài đặt hoàn tất, hãy xác minh phiên bản PHP bằng lệnh sau.
Bây giờ hãy đảm bảo bạn nhận được đầu ra PHP 8.0 tương tự như bên dưới.
1. Để cài đặt php-fpm trên Rocky Linux, hãy thực hiện lệnh DNF bên dưới.
Gõ 'y' và nhấn 'Enter' để cài đặt các gói php-fpm.
2. Sau khi cài đặt hoàn tất, hãy khởi động dịch vụ php-fpm và cho phép nó chạy tự động mỗi khi khởi động bằng lệnh sau.
Bây giờ bạn sẽ thấy đầu ra tương tự như bên dưới.
3. Bây giờ hãy kiểm tra trạng thái dịch vụ php-fpm bằng lệnh bên dưới.
Nếu php-fpm của bạn đang chạy, bạn sẽ thấy 'active (running)' như bên dưới. Nếu không, bạn có thể thấy đầu ra như 'exited'.
1. Để cài đặt các tiện ích mở rộng PHP bổ sung, bạn có thể sử dụng lệnh 'dnf install' và theo sau là tên là 'php-extension' name.
Chạy lệnh mẫu bên dưới để cài đặt mô-đun php-mcrypt.
Gõ 'y' và nhấn 'Enter' để cài đặt tiện ích mở rộng php-mcrype.
2. Ngoài ra, để cài đặt nhiều tiện ích mở rộng PHP, bạn có thể sử dụng định dạng là 'php-{extension1,extension2,extension3,etc}'.
Chạy ví dụ lệnh bên dưới để cài đặt nhiều tiện ích mở rộng PHP php-imagick, php-apcu, php-geoip, php-memcached và php-zstd.
3. Sau đó, hãy xác minh tất cả các phần mở rộng PHP có sẵn trên hệ thống của bạn bằng cách chạy lệnh sau.
Và bạn sẽ thấy tên của từng mô-đun PHP có sẵn trên hệ thống của mình như bên dưới.
Ngoài ra, bạn có thể sử dụng lệnh 'grep' để lọc tên phần mở rộng php như bên dưới.
Nếu phần mở rộng php-imagick có sẵn trên hệ thống của bạn, bạn sẽ thấy đầu ra như bên dưới.
Nếu không, bạn sẽ nhận được kết quả trống.
Tại thời điểm này, phiên bản PHP 8 đã được phát hành với các tính năng và cải tiến bổ sung, bao gồm các đối số được đặt tên, kiểu hợp nhất, thuộc tính, quảng bá thuộc tính của hàm tạo, biểu thức khớp, toán tử nullsafe, JIT và các cải tiến trong hệ thống kiểu, xử lý lỗi và tính nhất quán.
Trong hướng dẫn này, bạn sẽ tìm hiểu cách cài đặt PHP 8 trên máy chủ Rocky Linux.
Điều kiện tiên quyết
- * Người dùng có quyền root. Đảm bảo người dùng có thể chạy lệnh `sudo su` để có được quyền root hoặc bạn chỉ có thể sử dụng người dùng root.
Thêm kho lưu trữ EPEL và Remi Rocky Linux
Kho lưu trữ Rocky Linux mặc định cung cấp các gói PHP, nhưng không dành cho phiên bản PHP 8.x. Đối với phiên bản PHP PHP 8.x, bạn có thể cài đặt từ kho lưu trữ REMI.1. Trước khi thêm kho lưu trữ REMI, bạn phải thêm kho lưu trữ EPEL (Gói bổ sung cho Enterprise Linux) bằng cách thực hiện lệnh sau.
Mã:
sudo dnf install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
2. Bây giờ hãy chạy lệnh bên dưới để thêm kho lưu trữ REMI cho Rocky Linux 8 / CentOS 8/ hoặc RHEL 8.
Mã:
sudo dnf install https://rpms.remirepo.net/enterprise/remi-release-8.rpm
3. Sau khi cài đặt kho lưu trữ EPEL và REMI hoàn tất, hãy thực hiện lệnh sau để xác minh danh sách các kho lưu trữ khả dụng trên hệ thống Rocky Linux.
Mã:
sudo dnf repolist
Mã:
repo id repo name
appstream Rocky Linux 8 - AppStream
baseos Rocky Linux 8 - BaseOS
epel Extra Packages for Enterprise Linux 8 - x86_64
epel-modular Extra Packages for Enterprise Linux Modular 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ật PHP 8.0 Remi Kho lưu trữ
Đối với giai đoạn này, bạn sẽ kích hoạt kho lưu trữ REMI cho PHP 8.x và chuyển mô-đun cho PHP sang kho lưu trữ REMI, thay vì kho lưu trữ AppStream.1. Trước khi tiếp tục, hãy đặt lại luồng mô-đun PHP bằng lệnh bên dưới.
Mã:
sudo dnf module reset php
Nhập 'y' và nhấn 'Enter' để thêm khóa gpg Remi.
2. Bây giờ hãy kiểm tra các mô-đun PHP có sẵn trên hệ thống của bạn bằng lệnh sau.
Mã:
sudo dnf module list php
Mã:
Rocky Linux 8 - AppStream
Tóm tắt Hồ sơ Luồng Tên
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
Kho lưu trữ Mô-đun của Remi cho Enterprise Linux 8 - x86_64
Tóm tắt Hồ sơ Luồng Tên
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
Gợi ý: [d]default, [e]nabled, [x]disabled, [i]nstalled
Mã:
sudo dnf module enable php:remi-8.0
Cài đặt PHP 8.0 trên Rocky Linux
1. Để cài đặt các gói PHP, hãy thực thi lệnh bên dưới.
Mã:
sudo dnf install php
2. Sau khi cài đặt hoàn tất, hãy xác minh phiên bản PHP bằng lệnh sau.
Mã:
php --version
Mã:
PHP 8.0.9 (cli) (được xây dựng: 29 tháng 7 năm 2021 12:53:58) (NTS gcc x86_64)
Bản quyền (c) The PHP Group
Zend Engine v4.0.9, Bản quyền (c) Zend Technologies
với Zend OPcache v8.0.9, Bản quyền (c), của Zend Technologies
Cài đặt PHP-FPM 8.0 trên Rocky Linux
PHP-FPM (FastCGI Process Manager) là một giải pháp thay thế và là triển khai phổ biến nhất của PHP FastCGI. Nó đi kèm với các tính năng bổ sung như quản lý nhóm, giới hạn, hạn chế trên mọi nhóm, v.v. PHP-FPM phù hợp với các trang web có cả lưu lượng truy cập thấp và cao. Đặc biệt đối với các trang web có lưu lượng truy cập cao, bạn có thể sử dụng quản lý nhóm php-fpm để cải thiện hiệu suất tải của các trang web của mình.1. Để cài đặt php-fpm trên Rocky Linux, hãy thực hiện lệnh DNF bên dưới.
Mã:
sudo dnf install php-fpm
2. Sau khi cài đặt hoàn tất, hãy khởi động dịch vụ php-fpm và cho phép nó chạy tự động mỗi khi khởi động bằng lệnh sau.
Mã:
sudo systemctl enable --now php-fpm
Mã:
Tạo liên kết tượng trưng /etc/systemd/system/multi-user.target.wants/php-fpm.service → /usr/lib/systemd/system/php-fpm.service.
Mã:
sudo systemctl status php-fpm
Mã:
? php-fpm.service - Trình quản lý quy trình PHP FastCGI
Đã tải: đã tải (/usr/lib/systemd/system/php-fpm.service; đã bật; cài đặt trước của nhà cung cấp: đã tắt)
Đang hoạt động: đang hoạt động (đang chạy) kể từ Thứ Hai 2021-08-02 07:58:33 UTC; 8 giây trước
PID chính: 3964 (php-fpm)
Trạng thái: "Sẵn sàng xử lý kết nối"
Nhiệm vụ: 6 (giới hạn: 11156)
Bộ nhớ: 12,8M
CGroup: /system.slice/php-fpm.service
??3964 php-fpm: quy trình chính (/etc/php-fpm.conf)
??3965 php-fpm: nhóm www
??3966 php-fpm: nhóm www
??3967 php-fpm: nhóm www
??3968 php-fpm: nhóm www
??3969 php-fpm: nhóm www
Cài đặt tiện ích mở rộng PHP
Kho lưu trữ Remi không chỉ cung cấp phiên bản PHP 8.x mới mà còn cung cấp các tiện ích mở rộng PHP bổ sung không có trên AppStream kho lưu trữ, ví dụ: php-imagick, php-mcrypt, v.v.1. Để cài đặt các tiện ích mở rộng PHP bổ sung, bạn có thể sử dụng lệnh 'dnf install' và theo sau là tên là 'php-extension' name.
Chạy lệnh mẫu bên dưới để cài đặt mô-đun php-mcrypt.
Mã:
sudo dnf install php-mcrypt
2. Ngoài ra, để cài đặt nhiều tiện ích mở rộng PHP, bạn có thể sử dụng định dạng là 'php-{extension1,extension2,extension3,etc}'.
Chạy ví dụ lệnh bên dưới để cài đặt nhiều tiện ích mở rộng PHP php-imagick, php-apcu, php-geoip, php-memcached và php-zstd.
Mã:
sudo dnf install php-{imagick,apcu,geoip,memcached,zstd}
Mã:
php -m
Mã:
apcu
bz2
calendar
...
geoip
zlib
zstd
[Zend Modules]
Zend OPcache
Mã:
php -m | grep imagick
Mã:
imagick