PHP 8.0:n asentaminen Ubuntuun 20.04/18.04


PHP on luultavasti yksi laajimmin käytetyistä palvelinpuolen ohjelmointikielistä. Se on valintakieli kehitettäessä dynaamisia ja reagoivia verkkosivustoja. Itse asiassa suositut CM-alustat, kuten WordPress, Dupal ja Magento, perustuvat PHP:hen.

Tätä opasta laadittaessa PHP:n uusin versio on PHP 8.0. Se julkaistiin 26. marraskuuta 2020. Se sisältää uusia ominaisuuksia ja optimointeja, kuten liittotyypit, nimetyt argumentit, null safe -operaattori, hakulauseke, JIT sekä parannuksia virheiden käsittelyyn ja johdonmukaisuuteen.

Tämä opetusohjelma opastaa sinut PHP 8.0:n asennuksen läpi Ubuntu 20.04/18.04.

Tällä sivulla

  • Lisää Ondřej Surý PPA-arkisto Ubuntuun
  • Asenna PHP 8.0 Apachella Ubuntuun
  • Asenna PHP 8.0 Nginxillä Ubuntuun
  • Asenna PHP 8 -laajennukset Ubuntuun
  • Tarkista PHP 8:n asennus Ubuntussa

Vaihe 1: Lisää Ondřej Surý PPA-arkisto

PHP 7.4 on PHP-oletusversio Ubuntu 20.04 -varastoissa tätä opetusohjelmaa kirjoitettaessa. PHP:n uusimman version asentamiseen aiomme käyttää Ondrej PPA -tietovarastoja. Tämä arkisto sisältää useita PHP-versioita ja PHP-laajennuksia.

Mutta ensin päivitetään Ubuntu-järjestelmäpakettisi ja asennetaan joitain riippuvuuksia kuvan mukaisesti.

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

Lisää seuraavaksi Ondrej PPA.

sudo add-apt-repository ppa:ondrej/php

Paina pyydettäessä ENTER jatkaaksesi arkiston lisäämistä.

Vaihe 2: Asenna PHP 8.0 Apachen kanssa Ubuntuun

Päivitä seuraavaksi järjestelmätietovarastot, jotta voit alkaa käyttää PPA:ta.

sudo apt update

Jos käytät Apache-verkkopalvelinta, asenna PHP 8.0 Apache-moduulilla kuvan mukaisesti.

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

Käynnistä seuraavaksi Apache-verkkopalvelin uudelleen ottaaksesi moduulin käyttöön.

sudo systemctl restart apache2

Jos haluat käyttää Apache-verkkopalvelinta PHP-FPM:n kanssa, suorita alla oleva komento asentaaksesi tarvittavat paketit:

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

Koska PHP-FPM ei ole oletuksena käytössä, ota se käyttöön käynnistämällä seuraavat komennot:

sudo a2enmod proxy_fcgi setenvif
sudo a2enconf php8.0-fpm

Käynnistä sitten Apache-verkkopalvelin uudelleen, jotta muutokset tulevat voimaan.

sudo systemctl restart apache2

Vaihe 2: Asenna PHP 8.0 Nginxillä Ubuntuun

Jos päätät käyttää PHP 8.0:aa Nginx-asennuksen kanssa, suosituin vaihe on asentaa PHP-FPM PHP-tiedostojen käsittelyä varten.

Siksi asenna PHP ja PHP-FPM seuraavalla komennolla:

sudo apt install php8.0-fpm

PHP-FPM-palvelun pitäisi käynnistyä automaattisesti. Voit varmistaa tämän kuvan osoittamalla tavalla:

sudo systemctl status php8.0-fpm

Jotta Nginx käsittelee PHP-tiedostoja, määritä Nginx-palvelinlohko päivittämällä palvelinosio kuvan mukaisesti:

server {

   # ... some other code

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

Lopuksi käynnistä Nginx-verkkopalvelin uudelleen, jotta muutokset tulevat voimaan.

sudo systemctl restart nginx

Vaihe 4: Asenna PHP 8 -laajennukset Ubuntuun

PHP-laajennukset ovat kirjastoja, jotka laajentavat PHP:n toimintoja. Nämä laajennukset ovat olemassa paketteina ja ne voidaan asentaa seuraavasti:

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

Esimerkiksi alla oleva esimerkki asentaa SNMP-, Memcached- ja MySQL-laajennukset.

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

Vaihe 5: Tarkista PHP 8:n asennus Ubuntussa

Vahvista asennettu PHP-versio suorittamalla komento:

php -v

Lisäksi voit luoda esimerkkiphp-tiedoston osoitteeseen /var/www/html kuvan mukaisesti:

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

Liitä seuraavat rivit ja tallenna tiedosto.

<?php

phpinfo();

?>

Siirry lopuksi selaimeesi ja selaa palvelimen IP-osoitetta kuvan osoittamalla tavalla.

http://server-ip/info.php

Sinun pitäisi saada verkkosivu näkyviin.

Johtopäätös

Toivomme, että voit nyt asentaa PHP 8.0:n ja integroida sen kätevästi joko Apache- tai Nginx-verkkopalvelimiin. Palautteesi on erittäin tervetullutta.