Otu esi etinye PHP 8.1 na AlmaLinux 8

PHP 8.1 bụ mmelite dị ịrịba ama nke asụsụ PHP nke ewepụtara na Nọvemba 25, 2021. Ka anyị na-aga n'ihu na ntọhapụ PHP 8.0 dị, nke a bụ nkwalite ọkọlọtọ. PHP 8.1 ọhụrụ ahụ na-eweta ọnụọgụ, eriri, ụdị anaghị alaghachi azụ, klaasị ikpeazụ, ụdị njikọ, naanị ihe ọgụgụ n'etiti ndepụta ogologo atụmatụ na mgbanwe ọhụrụ.

N'ime nkuzi a, ị ga-amụta otu esi ebubata Module REMI wee wụnye PHP 8.1 na AlmaLinux 8.

Advertisement

Prerequisites

  • OS akwadoro: AlmaLinux 8.
  • Akaụntụ onye ọrụ: Akaụntụ onye ọrụ nwere sudo ihe ùgwù or ohere mgbọrọgwụ (su Command).

Na-emelite Sistemụ Ọrụ

Melite gi AlmaLinux Sistemụ arụmọrụ iji hụ na ngwugwu niile dị adị adịla ugbu a:

sudo dnf upgrade --refresh -y

Nkuzi a ga-eji ya sudo iwu na na-eche na ị nwere ọnọdụ sudo.

Iji nyochaa ọkwa sudo na akaụntụ gị:

sudo whoami

Ihe atụ na-egosi ọkwa sudo:

[joshua@localhost ~]$ sudo whoami
root

Ka ịtọlite ​​akaụntụ sudo dị adị ma ọ bụ ọhụrụ, gaa na nkuzi anyị na Otu esi etinye onye ọrụ na Sudoers na AlmaLinux.

Iji mgbọrọgwụ akaụntụ, jiri iwu na-esonụ na paswọọdụ mgbọrọgwụ banye.

su

Wụnye ebe nchekwa PHP 8.1 Remi

Ugbu a, PHP 8.1 egosighi na AlmaLinux's AppStream, ebe ọ ka dị ọhụrụ ma ọ nwebeghị nke ọma n'agbụ dị na ebe nchekwa Rhel. Agbanyeghị, ịnwere ike ịwụnye PHP site na ebe nchekwa (Remi), ebe nchekwa nke ndị ọzọ na-ebufe PHP 8.1 kacha ọhụrụ.

Ọrụ mbụ bụ ịwụnye ihe (EPEL) ebe nchekwa, nke na-anọchi anya (Ngwunye mgbakwunye maka Linux Enterprise). Maka ndị ọrụ ọhụrụ AlmaLinux na nkesa yiri ya dabere na RHEL, EPEL nwere ngwugwu ngwanrọ a na-ejikarị maka Enterprise Linux.

Iji tinye EPEL, jiri ihe ndị a (dnf) iwu ọnụ:

sudo dnf install epel-release

Ihe atụ mmepụta:

Otu esi etinye PHP 8.1 na AlmaLinux 8

ụdị "Y," wee pịa "Tinye igodo" ịga n'ihu na nwụnye.

Ugbu a ị gbakwunyela ebe nchekwa EPEL, gbanye (Nchekwa Remi) ya na ndi a:

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

Ihe atụ mmepụta:

Otu esi etinye PHP 8.1 na AlmaLinux 8

ụdị "Y," wee pịa "Tinye igodo" ịga n'ihu na nwụnye.

Ọzọ, jiri (dnf) iwu ka imelite ndepụta nchekwa gị:

sudo dnf update

Ị ga-ahụ ajụjụ n'ọnụ ọnụ gị gbasara ibubata ihe ( igodo GPG) maka ebe nchekwa Remi.

Ihe Nlereanya:

Otu esi etinye PHP 8.1 na AlmaLinux 8

ụdị "Y," wee pịa "Tinye igodo" ibubata igodo GPG wee mezue nrụnye.

Mara, ị ga-abịa ngwa ngwa x2 ọtụtụ ugboro iji pịnye "Y" ibubata igodo GPG ọzọ. Nke a dị mma ime.

Advertisement

Ọnọdụ – Wepụ nwụnye PHP dị adị

Maka ndị ọrụ chọrọ ịwụnye PHP 8.1 mana etinyelarị PHP ma ọ bụ PHP-FPM, wepụ ụdị nke gara aga. Dịka ọmụmaatụ, wepụ PHP 8.0 maka PHP 8.1.

Gbaa mbọ hụ na ị kwadobere faịlụ nhazi ọ bụla.

sudo dnf remove php php-fpm -y

Wepụ ihe ndọtị ngwugwu ndị ọzọ.

sudo dnf remove php* -y

Iji tọgharịa ndepụta modul PHP dị mfe site na iwu a:

sudo dnf module list reset php -y

Ugbu a ị nwere ike ịga n'ihu na akụkụ nke nkuzi ahụ.

Advertisement

Kwado ebe nchekwa PHP 8.1 (Remi).

PHP 7.2 bụ nhọrọ PHP ndabara maka nrụnye ọkọlọtọ na Rhel/AlmaLinux yana ebe nchekwa Remi. Ndụmọdụ dị ngwa bụ iji (depụta php) iwu ka ịhụ nhọrọ dị na ndabara.

Iwu ndepụta dnf modul a nwere ike ime nke a:

sudo dnf module list php

Ị ga-enweta ihe mmepụta dị ka n'okpuru. Rịba ama (d) mkpado maka ndabere PHP ka etinyere:

Ihe Nlereanya:

Otu esi etinye PHP 8.1 na AlmaLinux 8

Dịka ị nwere ike ịhụ n'elu, na (d) mkpado dị n'akụkụ PHP 7.2, nke ị ga-achọ ịtọgharịa ma gbanwee iji wụnye PHP 8.1.

Na-esote, mee ka PHP 8.1 jiri iwu a:

sudo dnf module enable php:remi-8.1

Ihe atụ mmepụta:

Otu esi etinye PHP 8.1 na AlmaLinux 8

Tinye PHP 8.1

Ugbu a ị gbakwunyela ebe nchekwa PHP Remi wee mee ka PHP 8.1 bụrụ ụdị ndabara na sistemụ gị, ị nwere ike iwunye PHP 8.1 site na iwu a:

Ndị ọrụ Apache (HTTPD):

sudo dnf install php

Ndị ọrụ Nginx:

sudo dnf install php-fpm

Ihe atụ mmepụta:

Otu esi etinye PHP 8.1 na AlmaLinux 8

ụdị "Y," wee pịa "Tinye igodo" ịga n'ihu na nwụnye.

Mara, a ga-akpali gị maka ndị ọzọ Mbubata igodo GPG, Pịnye Y nye onye ọ bụla na-egosi na ọdụ gị.

Ọ bụrụ n’ịchọrọ ịwụnye ndọtị ndị a na-ejikarị maka PHP 8.1, jiri iwu a:

sudo dnf install php-cli php-fpm php-curl php-mysqlnd php-gd php-opcache php-zip php-intl php-common php-bcmath php-imap php-imagick php-xmlrpc php-json php-readline php-memcached php-redis php-mbstring php-apcu php-xml php-dom php-redis php-memcached php-memcache

Mara, wepụ nhọrọ ndị ị na-achọghị nke a bụ nhọrọ. A na-atụ aro nke ukwuu ka ịwụnye na idobe ụdị modul ịchọrọ site na arụmọrụ yana ọkọlọtọ nchekwa.

Ihe atụ mmepụta:

Otu esi etinye PHP 8.1 na AlmaLinux 8

ụdị "Y," wee pịa "Tinye igodo" ịga n'ihu na nwụnye.

N'ikpeazụ, jiri iwu na-esonụ maka onye ọ bụla nwere mmasị ịwụnye alaka mmepe.

sudo dnf install php-devel -y

Nke a ga-arụnye ọtụtụ ndabere, ma ọ gwụla ma ị na-eji PHP na-etolite ma ọ bụ nwee ụfọdụ ihe pụrụ iche iji wụnye ya, ejila ụdị a.

Ugbu a ị tinyela PHP 8.1 na mgbakwunye na-elele ụdị ahụ site na iwu a:

php -v

Ihe atụ mmepụta:

Otu esi etinye PHP 8.1 na AlmaLinux 8

Ntinye PHP-FPM nke PHP 8.1

N'adịghị ka nrụnye PHP-FPM na Debian/Ubuntu na-eji (www-data) onye ọrụ, nke a abụghị ikpe maka nrụnye ezinụlọ RHEL. Site na ndabara na AlmaLinux, a haziri ọrụ PHP-FPM ka a na-agba ya (apache) onye ọrụ, nke ezighi ezi ebe ọ bụ na anyị na-eji Nginx, nke a kwesịrị ka edozi ya.

Nke mbụ, meghere ndị a (www.conf) nhazi faịlụ:

sudo nano /etc/php-fpm.d/www.conf

Na-esote, dochie (apache) onye ọrụ na otu na (Nginx) onye ọrụ na otu:

Otu esi etinye PHP 8.1 na AlmaLinux 8

Ka ịchekwaa, pịa (CTRL+O) wee pụọ (CTRL+X).

Ugbu a, ị ga-ebugharị ma ọ bụ malitegharịa ọrụ PHP-FPM gị:

sudo systemctl restart php-fpm

Nhazi Nginx

Ihe nkesa nke Nginx chọrọ ihe atụ n'okpuru maka Nginx iji hazie faịlụ PHP.

N'okpuru ebe a, ihe atụ maka mmadụ niile ihe nkesa {} na-egbochi faịlụ PHP ndị chọrọ ebe ~ .php$ gbakwunyere.

    location ~ \.php$ {
        try_files $uri =404;
        fastcgi_pass unix:/run/php-fpm/www.sock;
        fastcgi_index   index.php;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include fastcgi_params;
    }

Nwalee Nginx iji jide n'aka na ị nweghị mmejọ na mgbanwe ndị e mere na koodu dị n'elu; tinye ihe ndia.

sudo nginx -t

Ihe atụ mmepụta:

nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
nginx: configuration file /etc/nginx/nginx.conf test is successful

Malitegharịa ọrụ Nginx maka nrụnye ka ọ zuru oke.

sudo systemctl restart nginx

Okwu na mmechi

N'ime nkuzi a, ị mụtala ka esi etinye PHP 8.1 wee hazie otu esi eji ya na Apache na Nginx. PHP 8.1 na-atọ ụtọ. Otú ọ dị, n'oge dị ugbu a, ọ ka na-akwụsi ike dị ka 8.0 ntọhapụ ma ọ bụ ochie anụ 7.4, ya mere kpachara anya na ị nwere ike ịhụ na ọtụtụ n'ime ọkacha mmasị gị software dị ka WordPress ma ọ bụ Plugins / Gburugburu maka CMS software nwere ike esemokwu ruo mgbe mmepe nwere ike imelite.

Mee ụfọdụ nyocha, kwadebe, ma tinye PHP 7.4 ma ọ bụ 8.0 ma dị njikere iji dochie anya ma ọ bụrụ na ihe ọ bụla na-ezighị ezi mgbe ị na-eme mgbanwe ahụ. Ụdị kwụsiri ike dị ka 8.0 ka na-arụsi ọrụ ike, a na-agbanyekwa ngwugwu n'otu oge yana ngwugwu 8.1.

Idenye aha
Gwa nke
0 Comments
Inline nzaghachi
Lee echiche niile
mgbasa ozi mgbasa ozi
0
Ga-ahụ n'anya gị echiche, biko okwu.x