Kouman enstale PHP 8.1 sou Ubuntu 20.04

PHP 8.1 se yon aktyalizasyon enpòtan nan lang PHP a ki pral "ofisyèlman" lage nan dat 25 novanm 2021. Sa a se yon amelyorasyon estanda ki pral pi devan soti nan lage PHP 8.0 ki deja egziste ak nouvo PHP 8.1 la ap pote enums, fib, pa janm retounen kalite, final konstan klas, kalite entèseksyon, pwopriyete lekti sèlman pami lis la long nan nouvo karakteristik ak chanjman.

Nan leson patikilye sa a, ou pral aprann ki jan yo enpòte Ondřej Surý PPA a epi enstale PHP 8.1 sou Ubuntu 20.04 LTS Focal Fossa sistèm ou a.

Kondisyon

  • OS rekòmande: Ubentu 20.04
  • Kont itilizatè: Yon kont itilizatè ak sudo or aksè rasin.

Mizajou sistèm operasyon

Mete ajou ou Ubentu sistèm operasyon pou asire tout pakè ki egziste deja yo ajou:

sudo apt update && sudo apt upgrade -y

Tutorial la pral sèvi ak la sudo kòmand ak sipoze ou gen estati sudo.

Pou verifye estati sudo sou kont ou:

sudo whoami

Egzanp pwodiksyon ki montre estati sudo:

[joshua@ubuntu ~]$ sudo whoami
root

Pou mete kanpe yon kont sudo ki deja egziste oswa nouvo, vizite leson patikilye nou an sou ajoute yon itilizatè nan Sudoers sou Ubuntu.

Pou itilize kont rasin, sèvi ak lòd sa a ak modpas rasin lan pou konekte.

su

reklam


Import Ondřej Surý PHP PPA

Pou enstale PHP 8.1 avèk siksè, w ap bezwen enpòte bon PPA ki renome soti nan Ondřej Surý, devlopè prensipal PHP ak Debian, epi kenbe pakè Ubuntu ak Debian.

Premyèman, enstale kondisyon yo ak Ondřej Surý PPA.

sudo apt install software-properties-common && sudo add-apt-repository ppa:ondrej/php -y

Yon fwa fè, li se yon bon lide pou rafrechi depo APT ou yo paske PPA a ka pote amelyorasyon adisyonèl nan depandans ki egziste deja yo.

sudo apt update

Apre sa, ajou nenpòt pakè ki mande li.

sudo apt upgrade -y

Enstale PHP 8.1 ak Opsyon Apache

Si ou kouri yon Apache HTTP sèvè, ou kapab kouri PHP kòm yon modil Apache or PHP-FPM.

Enstale Apache Modil

Pou enstale PHP 8 kòm yon modil Apache, antre nan lòd sa a.

sudo apt install php8.1 libapache2-mod-php8.1

Egzanp pwodiksyon:

Ki jan yo enstale PHP 8.1 & PHP 8.1 FPM sou Ubuntu 20.04

Yon fwa enstalasyon yo fini, rekòmanse sèvè Apache ou a pou nouvo modil PHP a dwe chaje.

sudo systemctl restart apache2

Enstale Apache ak PHP-FPM

PHP-FPM (yon akwonim nan FastCGI Process Manager) se yon PHP altènatif trè popilè (Prosesisè ipètèks) FastCGI aplikasyon.

Pou enstale PHP-FPM ak kòmandman sa yo.

sudo apt install php8.1-fpm libapache2-mod-fcgid

Remake byen, pa default, PHP-FPM pa pèmèt pou Apache. Ou dwe pèmèt li pa kòmandman sa a.

sudo a2enmod proxy_fcgi setenvif && sudo a2enconf php8.1-fpm

Anfen, rekòmanse Apache.

sudo systemctl restart apache2

Verifye PHP-FPM ap travay:

sudo systemctl status php8.1-fpm

Egzanp pwodiksyon:

Ki jan yo enstale PHP 8.1 & PHP 8.1 FPM sou Ubuntu 20.04

Kòm yon rapèl pou wè ki vèsyon PHP 8.1 ki enstale sou sistèm ou an, sèvi ak lòd sa a.

php --version

Egzanp pwodiksyon:

Ki jan yo enstale PHP 8.1 & PHP 8.1 FPM sou Ubuntu 20.04

reklam


Enstale PHP 8.1 ak Opsyon Nginx

Nginx pa genyen pwosesis PHP natif natal tankou kèk lòt sèvè entènèt tankou Apache. Ou pral bezwen enstale PHP-FPM "manadjè pwosesis fastCGI" pou okipe dosye PHP yo.

Premyèman, tcheke pou mizajou sou sistèm ou an epi enstale PHP-FPM, enstale natif natal pakè PHP yo mande yo.

Nan tèminal ou a, sèvi ak lòd sa a pou enstale PHP 8.1 ak PHP 8.1-FPM.

sudo apt install php8.1 php8.1-fpm php8.1-cli -y

Yon fwa enstale, sèvis PHP-FPM la otomatikman kòmanse, epi ou ka tcheke estati a pou asire w ke li fonksyone byen.

sudo systemctl status php8.1-fpm

Egzanp pwodiksyon:

Ki jan yo enstale PHP 8.1 & PHP 8.1 FPM sou Ubuntu 20.04

Ou pral bezwen modifye blòk sèvè Nginx ou a epi ajoute egzanp ki anba a pou Nginx trete fichye PHP yo.

Anba a, egzanp pou tout blòk sèvè ki trete dosye PHP ki bezwen kote ~ .php$ te ajoute.

server {
 # … some other code
 location ~ .php$ {
   include snippets/fastcgi-php.conf;
   fastcgi_pass unix:/run/php/php8.1-fpm.sock;
 }

Teste Nginx pou asire w ke ou pa gen okenn erè ak ajisteman ki fèt ak kòd ki anwo a; antre sa ki annapre yo.

sudo nginx -t

Egzanp pwodiksyon:

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

Rekòmanse sèvis Nginx pou enstalasyon an fini.

sudo systemctl restart nginx

Kòm yon rapèl pou wè ki vèsyon PHP 8.1 ki enstale sou sistèm ou an, sèvi ak lòd sa a.

php --version

Egzanp pwodiksyon:

Ki jan yo enstale PHP 8.1 & PHP 8.1 FPM sou Ubuntu 20.04

Kòmantè ak konklizyon

Nan leson patikilye a, ou te aprann ki jan yo enstale PHP 8.1 ak konfigirasyon ki jan yo sèvi ak li ak Apache ak Nginx. PHP 8.1 se enteresan. Sepandan, nan moman aktyèl la, li toujou soti nan beta epi li pa konsidere kòm ki estab, tankou 8.0 oswa ansyen ki estab 7.4 la, kidonk pran prekosyon ou ka jwenn ke anpil nan lojisyèl pi renmen ou tankou WordPress oswa Plugins / Tèm pou lojisyèl CMS ka konfli. jiskaske devlopè yo ka mete ajou.

Fè kèk rechèch, prepare, epi fè PHP 7.4 oswa 8.0 enstale epi pare pou ranplase si nenpòt bagay ale mal lè w ap fè chanjman an. Vèsyon ki estab tankou 8.0 yo toujou aktivman devlope, ak pakè yo pouse ansanm ak pakè 8.1 yo.

Leave a Comment