Kako instalirati PHP 8.0 na Ubuntu 20.04/18.04


PHP je vjerovatno jedan od najčešće korištenih programskih jezika na strani servera. To je jezik izbora pri razvoju dinamičnih i responzivnih web stranica. U stvari, popularne CM platforme kao što su WordPress, Drupal i Magento su bazirane na PHPu.

U vrijeme pisanja ovog vodiča, najnovija verzija PHP-a je PHP 8.0. Objavljen je 26. novembra 2020. Može se pohvaliti novim funkcijama i optimizacijama kao što su tipovi sindikata, imenovani argumenti, null safe operator, izraz podudaranja, JIT i poboljšanja u rukovanju greškama i konzistentnosti.

Ovaj vodič vas vodi kroz instalaciju PHP 8.0 na Ubuntu 20.04/18.04.

Na ovoj stranici

  • Dodajte Ondřej Surý PPA repozitorijum na Ubuntu
  • Instalirajte PHP 8.0 sa Apacheom na Ubuntu
  • Instalirajte PHP 8.0 sa Nginxom na Ubuntu
  • Instalirajte PHP 8 ekstenzije u Ubuntu
  • Provjerite instalaciju PHP 8 u Ubuntu

Korak 1: Dodajte Ondřej Surý PPA repozitorijum

PHP 7.4 je zadana verzija PHP-a u Ubuntu 20.04 spremištima u vrijeme pisanja ovog vodiča. Da bismo instalirali najnoviju verziju PHP-a, koristićemo Ondrej PPA spremišta. Ovo spremište sadrži više verzija PHP-a i PHP ekstenzija.

Ali prvo, hajde da ažuriramo vaše Ubuntu sistemske pakete i instaliramo neke zavisnosti kao što je prikazano.

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

Zatim dodajte Ondrej PPA.

sudo add-apt-repository ppa:ondrej/php

Kada se od vas zatraži, pritisnite ENTER da nastavite sa dodavanjem spremišta.

Korak 2: Instalirajte PHP 8.0 sa Apacheom na Ubuntu

Zatim ažurirajte sistemska spremišta da počnete koristiti PPA.

sudo apt update

Ako koristite Apache web server, instalirajte PHP 8.0 sa Apache modulom kao što je prikazano.

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

Zatim ponovo pokrenite Apache web server da biste omogućili modul.

sudo systemctl restart apache2

Ako želite koristiti Apache web server sa PHP-FPM, pokrenite naredbu ispod da instalirate potrebne pakete:

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

Budući da PHP-FPM nije omogućen prema zadanim postavkama, omogućite ga pozivanjem sljedećih naredbi:

sudo a2enmod proxy_fcgi setenvif
sudo a2enconf php8.0-fpm

Zatim ponovo pokrenite Apache web server kako bi promjene stupile na snagu.

sudo systemctl restart apache2

Korak 2: Instalirajte PHP 8.0 sa Nginxom na Ubuntu

Ako odaberete da koristite PHP 8.0 sa instalacijom Nginxa, najpreporučljiviji korak koji treba poduzeti je instaliranje PHP-FPM za obradu PHP datoteka.

Stoga, instalirajte PHP i PHP-FPM koristeći sljedeću naredbu:

sudo apt install php8.0-fpm

Usluga PHP-FPM bi se trebala pokrenuti automatski. Ovo možete provjeriti kao što je prikazano:

sudo systemctl status php8.0-fpm

Da bi Nginx obrađivao PHP datoteke, konfigurirajte svoj blok Nginx servera ažuriranjem odjeljka servera kao što je prikazano:

server {

   # ... some other code

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

Konačno, ponovo pokrenite Nginx web server kako bi promjene stupile na snagu.

sudo systemctl restart nginx

Korak 4: Instalirajte PHP 8 ekstenzije u Ubuntu

PHP ekstenzije su biblioteke koje proširuju funkcionalnost PHP-a. Ove ekstenzije postoje kao paketi i mogu se instalirati na sljedeći način:

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

Na primjer, primjer ispod instalira ekstenzije SNMP, Memcached i MySQL.

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

Korak 5: Potvrdite instalaciju PHP 8 u Ubuntu

Da potvrdite instaliranu verziju PHP-a, pokrenite naredbu:

php -v

Dodatno, možete kreirati uzorak php datoteke na /var/www/html kao što je prikazano:

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

Zalijepite sljedeće redove i sačuvajte datoteku.

<?php

phpinfo();

?>

Na kraju, idite na svoj pretraživač i pregledajte IP adresu servera kao što je prikazano.

http://server-ip/info.php

Trebalo bi da vam se prikaže web stranica.

Zaključak

Nadamo se da sada možete instalirati PHP 8.0 i udobno ga integrirati sa bilo Apache ili Nginx web serverima. Vaše povratne informacije su dobrodošle.