Otu esi etinye PHP 8.0 na Ubuntu 20.04/18.04


A na-arụ ụka na PHP bụ otu n'ime asụsụ mmemme n'akụkụ ihe nkesa na-ejikarị eme ihe. Ọ bụ asụsụ a na-ahọrọ mgbe ị na-emepe webụsaịtị dị ike ma na-anabata ya. N'ezie, nyiwe CM ewu ewu dị ka WordPress, Drupal, na Magento dabere na PHP.

N'oge idetu ntuziaka a, ụdị PHP kachasị ọhụrụ bụ PHP 8.0. A tọhapụrụ ya na Nọvemba 26, 2020. Ọ na-anya isi maka njirimara ọhụrụ yana nkwalite dị ka ụdị otu, arụmụka aha, onye na-ahụ maka enweghị nchekwa, okwu egwuregwu, JIT, yana ndozi na njikwa na nkwụsi ike.

Nkuzi a na-ejegharị gị site na ntinye nke PHP 8.0 na Ubuntu 20.04/18.04.

Na ibe a

  • Tinye ebe nchekwa Ondřej Surý PPA na Ubuntu
  • Wụnye PHP 8.0 na Apache na Ubuntu
  • Wụnye PHP 8.0 na Nginx na Ubuntu
  • Wụnye mgbakwunye PHP 8 na Ubuntu
  • Nyochaa nwụnye PHP 8 na Ubuntu

PHP 7.4 bụ ụdị PHP ndabara na ebe nchekwa Ubuntu 20.04 n'oge edere nkuzi a. Iji wụnye ụdị PHP kachasị ọhụrụ, anyị ga-eji ebe nchekwa Ondrej PPA. Ebe nchekwa a nwere ọtụtụ ụdị PHP yana ndọtị PHP.

Mana nke mbụ, ka anyị melite ngwugwu sistemụ Ubuntu gị wee wụnye ụfọdụ dabere dị ka egosiri.

$ sudo apt update
$ sudo apt upgrade
$ sudo apt install  ca-certificates apt-transport-https software-properties-common

Na-esote, tinye Ondrej PPA.

$ sudo add-apt-repository ppa:ondrej/php

Mgbe kpaliri, pịa ENTER ka ịga n'ihu na ịgbakwunye ebe nchekwa ahụ.

Na-esote, melite ebe nchekwa sistemụ ka ịmalite iji PPA.

$ sudo apt update

Ọ bụrụ na ị na-agba sava weebụ Apache, tinye PHP 8.0 na modul Apache dị ka egosiri.

$ sudo apt install php8.0 libapache2-mod-php8.0 

Na-esote, malitegharịa Apache webserver iji mee ka modul ahụ nwee ike.

$ sudo systemctl restart apache2

Ọ bụrụ na ịchọrọ iji sava weebụ Apache na PHP-FPM, gbaa iwu dị n'okpuru ka ịwụnye ngwugwu achọrọ:

$ sudo apt install php8.0-fpm libapache2-mod-fcgid

Ebe ọ bụ na anaghị enyere PHP-FPM aka na ndabara, mee ya site n'ịkpọ iwu ndị a:

$ sudo a2enmod proxy_fcgi setenvif
$ sudo a2enconf php8.0-fpm

Mgbe ahụ malitegharịa sava weebụ Apache maka mgbanwe ndị a ga-arụ ọrụ.

$ sudo systemctl restart apache2

Ọ bụrụ na ịhọrọ iji PHP 8.0 na ntinye Nginx, nzọụkwụ akwadoro ka ị mee bụ ịwụnye PHP-FPM iji hazie faịlụ PHP.

Ya mere, wụnye PHP na PHP-FPM site na iji iwu a:

$ sudo apt install php8.0-fpm

Ọrụ PHP-FPM kwesịrị ịmalite na-akpaghị aka. Ị nwere ike nyochaa nke a dị ka egosiri:

$ sudo systemctl status php8.0-fpm

Maka Nginx iji hazie faịlụ PHP, hazie ngọngọ nkesa Nginx gị site na imelite ngalaba nkesa dị ka egosiri:

server {

   # ... some other code

    location ~ \.php$ {
        include snippets/fastcgi-php.conf;
        fastcgi_pass unix:/run/php/php8.0-fpm.sock;
    }
}

N'ikpeazụ, malitegharịa sava weebụ Nginx ka mgbanwe ndị ahụ malite.

$ sudo systemctl restart nginx

Mgbakwunye PHP bụ ọba akwụkwọ na-agbatị ọrụ PHP. Mgbatị ndị a dị dị ka ngwugwu ma enwere ike itinye ya dịka ndị a:

$ sudo apt install php8.0-[extension-name]

Dịka ọmụmaatụ, ihe atụ dị n'okpuru na-etinye mgbakwunye SNMP, Memcached na MySQL.

$ sudo apt install php8.0-snmp php-memcached php8.0-mysql

Iji kwado ụdị PHP arụnyere, gbaa iwu a:

$ php -v

Na mgbakwunye, ịnwere ike ịmepụta faịlụ php sample na /var/www/html dị ka egosiri:

$ sudo vim /var/www/html/info.php

Tapawa ahịrị ndị a ma chekwaa faịlụ ahụ.

<?php

phpinfo();

?>

N'ikpeazụ, gaa na ihe nchọgharị gị wee chọgharịa adreesị IP nke ihe nkesa dị ka egosiri.

http://server-ip/info.php

Ị ga-enweta ihe ngosi weebụ.

Ọ bụ olileanya anyị na ị nwere ike ịwụnye PHP 8.0 wee jikọta ya na sava weebụ Apache ma ọ bụ Nginx. A na-anabata nzaghachi gị.