Pasang PHP 8.1 pada Rocky 8 | CentOS 8 | Alma 8


Dalam pos blog ringkas ini, kami akan fokus kepada bagaimana untuk memasang PHP 8.1 pada Rocky Linux 8|CentOS 8. PHP adalah bahasa skrip pelayan yang sangat berkuasa dan sumber terbuka, dicipta untuk menjadikan penciptaan laman web dinamik dan interaktif satu perjalanan yang menarik. PHP adalah alternatif kepada pesaing seperti ASP milik Microsoft. Bahasa pengaturcaraan ini asalnya dicipta oleh pengaturcara Denmark-Kanada, bernama Rasmus Lerdorf, pada tahun 1994.

PHP 8.1 adalah kemas kini daripada versi PHP sebelumnya, iaitu versi 8.0. Jika anda bersedia untuk menguji versi baru PHP ini, maka artikel ini sesuai untuk anda. Sistem pengurusan kandungan yang paling berkuasa seperti Drupal, WordPress, dan Joomla dikuasakan oleh PHP. PHP 8.1 hadir dengan set ciri baru, peningkatan prestasi, perubahan dan penghapusan fungsi tertentu.

Ciri baharu dalam PHP 8.1

  • Enum – Ia kini ditambah dalam PHP 8.1
  • Properti hanya-baca – Properti kelas boleh ditandakan sebagai hanya-baca dan hanya boleh ditulis sekali sahaja
  • Jenis Pulangan Never – Satu petunjuk jenis pulangan baru yang dipanggil never ditambah dalam PHP 8.1
  • Sokongan untuk DNS-over-HTTPS (DoH)
  • Sokongan Format Imej AVIF – Pemprosesan imej PHP 8.1 dan sambungan GD menambah sokongan untuk imej AVIF.
  • Menambah sokongan untuk Fibers – Mekanisme peringkat rendah untuk menguruskan parallelisme
  • Muat Naik Fail dengan CURLStringFile – Dalam PHP 8.1, sambungan PHP Curl kini menyokong permintaan HTTP(S) dengan muat naik fail
  • Penambahan ciri jenis persilangan murni
  • PHP 8.1 menambah array_is_list sebagai fungsi terbina dalam
  • Notasi Nombor Oktal Eksplisit
  • Fungsi fdatasync() dan fsync() Baru
  • Tentukan Konstanta Kelas Akhir
  • Antara banyak ciri baru dan penghapusan lain

Pasang PHP 8.1 pada Rocky 8/CentOS 8/AlmaLinux 8

Dalam bahagian seterusnya, kita akan menumpukan pada pemasangan PHP 8.1 langkah demi langkah pada sistem Rocky Linux 8|CentOS 8. Sistem berasaskan RHEL 8 dilengkapi dengan beberapa versi PHP, yang tersedia dalam repositori AppStream dan boleh disemak dengan arahan berikut:

$ sudo dnf module list php
Last metadata expiration check: 0:00:05 ago on Sat 20 Nov 2021 10:32:10 AM UTC.
Rocky Linux 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

Untuk PHP 8.1, kami akan menggunakan repositori Remi RPM yang mengandungi pakej baru PHP untuk sistem berasaskan RHEL seperti CentOS, Rocky Linux, AlmaLinux, Fedora dan lain-lain.

1) Tambahkan repositori Remi YUM

Kita perlu mengaktifkan repositori EPEL sebelum menambah repositori YUM Remi ke dalam sistem kita.

sudo dnf -y install epel-release
sudo dnf config-manager --set-enabled powertools

Selepas repositori EPEL dan PowerTools ditambahkan ke sistem, teruskan untuk mengaktifkan repositori YUM Remi:

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

Sahkan semua repositori yang ditambah adalah aktif:

$ sudo dnf -y makecache
$ sudo dnf -y repolist
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
powertools                                                                  Rocky Linux 8 - PowerTools
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

Harus ada modul PHP baru yang ditambah ke dalam sistem

$ sudo dnf module list php
Last metadata expiration check: 0:00:05 ago on Sat 20 Nov 2021 10:32:10 AM UTC.
Rocky Linux 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's 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                                   common [d], devel, minimal                                   PHP scripting language
php                                    remi-8.1                                   common [d], devel, minimal                                   PHP scripting language
php                                    remi-8.2                                   common [d], devel, minimal                                   PHP scripting language
php                                    remi-8.3                                   common [d], devel, minimal                                   PHP scripting language

Hint: [d]efault, [e]nabled, [x]disabled, [i]nstalled

2) Pasang pakej PHP 8.1

Dengan repositori yang diperlukan diaktifkan dan disahkan berfungsi, kita kini boleh memasang PHP 8.1 pada Rocky Linux 8|CentOS 8.

Mari tetapkan semula modul lalai PHP dalam repositori AppStream:

sudo dnf -y module reset php

Dayakan repositori Remi untuk PHP 8.1 dengan menjalankan arahan di bawah sebagai pengguna sudo:

sudo dnf module install php:remi-8.1

Sahkan kebergantungan pakej dan teruskan dengan pemasangan PHP 8.1 dari repositori Remi

....
Transaction Summary
======================================================================================================================================================================================================
Install  9 Packages

Total download size: 9.7 M
Installed size: 45 M
Is this ok [y/N]: y

Anda diminta untuk menerima pengimportan beberapa kunci GPG tandatangan pakej semasa pemasangan.

------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Total                                                                                                                                                                  12 MB/s | 9.7 MB     00:00
Remi's Modular repository for Enterprise Linux 8 - x86_64                                                                                                             3.0 MB/s | 3.1 kB     00:00
Importing GPG key 0x5F11735A:
 Userid     : "Remi's RPM repository <[email >"
 Fingerprint: 6B38 FEA7 231F 87F5 2B9C A9D8 5550 9759 5F11 735A
 From       : /etc/pki/rpm-gpg/RPM-GPG-KEY-remi.el8
Is this ok [y/N]: y

Mari lihat versi PHP yang dipasang pada sistem kita:

$ php --version
PHP 8.1.25 (cli) (built: Oct 24 2023 21:51:16) (NTS gcc x86_64)
Copyright (c) The PHP Group
Zend Engine v4.1.25, Copyright (c) Zend Technologies

3) Pasang Sambungan PHP 8.1

Sambungan PHP membantu anda mengelakkan keperluan untuk mencipta semula kod yang sama untuk pelbagai aplikasi PHP dari awal. Anda memasang sambungan dan hanya menghubungkannya dari aplikasi anda. Anda boleh dengan mudah menggunakan sambungan yang tersedia secara awam yang boleh dipasang dengan sintaks arahan:

sudo yum install php-xxx
  • Di mana xxx adalah nama sambungan.

Berikut ialah arahan untuk memasang sambungan PHP yang biasa digunakan:

sudo dnf install php php-cli php-{curl,json,zip,fpm,gd,mysqlnd,devel,mcrypt,mbstring,xml,pear,bcmath,memcache,redis}

Terima arahan pemasangan untuk meneruskan:

Transaction Summary
======================================================================================================================================================================================================
Install  73 Packages

Total download size: 78 M
Installed size: 208 M
Is this ok [y/N]: y

Memeriksa semua sambungan PHP yang tersedia:

$ php --modules
[PHP Modules]
bcmath
bz2
calendar
Core
ctype
curl
date
dom
exif
fileinfo
filter
ftp
gd
gettext
hash
iconv
igbinary
json
libxml
mbstring
mcrypt
memcache
msgpack
mysqli
mysqlnd
openssl
pcntl
pcre
PDO
pdo_mysql
pdo_sqlite
Phar
posix
readline
redis
Reflection
session
shmop
SimpleXML
sockets
sodium
SPL
sqlite3
standard
sysvmsg
sysvsem
sysvshm
tokenizer
xml
xmlreader
xmlwriter
xsl
Zend OPcache
zip
zlib

[Zend Modules]
Zend OPcache

4) Menjalankan pelbagai versi PHP

Koleksi Perisian adalah cara terbaik untuk menjalankan pelbagai versi PHP. Koleksi php81 tersedia dalam repositori remi-safe dan boleh dipasang dengan arahan:

sudo dnf install php81

Pakej tambahan boleh dipasang dengan menggunakan arahan:

sudo dnf install php81-php-xxx

Memeriksa versi PHP 8.1

$ php81 --version
PHP 8.1.25 (cli) (built: Oct 24 2023 21:51:16) (NTS gcc x86_64)
Copyright (c) The PHP Group
Zend Engine v4.1.25, Copyright (c) Zend Technologies
    with Zend OPcache v8.1.25, Copyright (c), by Zend Technologies

Menyenaraikan modul yang dihidupkan untuk PHP 8.1

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

[Zend Modules]
Zend OPcache

Ini mengakhiri panduan kami tentang cara memasang PHP 8.1 pada Rocky Linux 8|CentOS 8|AlmaLinux 8. Kami berharap anda menikmatinya dan sentiasa dialu-alukan. Untuk sebarang masalah yang dihadapi semasa pemasangan, jangan ragu untuk menghubungi kami di bahagian komen atau melalui e-mel. Selamat mencuba!

Buku Pembangunan Web yang Disyorkan untuk Dibaca:

  • Buku Terbaik untuk belajar Pembangunan Web – PHP, HTML, CSS, JavaScript dan jQuery
  • Buku Terbaik Untuk Menguasai Reka Bentuk Web
  • Buku Terbaik Untuk Belajar CSS & CSS3
  • Buku Terbaik Untuk Belajar HTML & HTML5
  • Buku Rujukan Terbaik untuk Apache dan Nginx