Wyszukiwanie w witrynie

Jak zainstalować PHP 8.0 na Ubuntu 20.04/18.04


PHP jest prawdopodobnie jednym z najczęściej używanych języków programowania po stronie serwera. Jest to język wybierany przy tworzeniu dynamicznych i responsywnych stron internetowych. W rzeczywistości popularne platformy CM, takie jak WordPress, Drupal i Magento, opierają się na PHP.

W chwili pisania tego przewodnika najnowsza wersja PHP to PHP 8.0. Został wydany 26 listopada 2020 r. Oferuje nowe funkcje i optymalizacje, takie jak typy unii, nazwane argumenty, bezpieczny operator zerowy, wyrażenie dopasowania, JIT oraz ulepszenia obsługi błędów i spójności.

Ten samouczek przeprowadzi Cię przez proces instalacji PHP 8.0 na Ubuntu 20.04/18.04.

Na tej stronie

  • Dodaj repozytorium PPA Ondřej Surý na Ubuntu
  • Zainstaluj PHP 8.0 z Apache na Ubuntu
  • Zainstaluj PHP 8.0 z Nginx na Ubuntu
  • Zainstaluj rozszerzenia PHP 8 w Ubuntu
  • Sprawdź instalację PHP 8 w Ubuntu

Krok 1: Dodaj repozytorium PPA Ondřej Surý

PHP 7.4 jest domyślną wersją PHP w repozytoriach Ubuntu 20.04 w momencie pisania tego samouczka. Do zainstalowania najnowszej wersji PHP skorzystamy z repozytoriów Ondrej PPA. To repozytorium zawiera wiele wersji PHP i rozszerzeń PHP.

Ale najpierw zaktualizujmy pakiety systemowe Ubuntu i zainstalujmy niektóre zależności, jak pokazano.

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

Następnie dodaj Ondrej PPA.

sudo add-apt-repository ppa:ondrej/php

Po wyświetleniu monitu naciśnij ENTER, aby kontynuować dodawanie repozytorium.

Krok 2: Zainstaluj PHP 8.0 z Apache na Ubuntu

Następnie zaktualizuj repozytoria systemowe, aby rozpocząć korzystanie z PPA.

sudo apt update

Jeśli używasz serwera WWW Apache, zainstaluj PHP 8.0 z modułem Apache, jak pokazano.

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

Następnie zrestartuj serwer Apache, aby włączyć moduł.

sudo systemctl restart apache2

Jeśli chcesz używać serwera WWW Apache z PHP-FPM, uruchom poniższe polecenie, aby zainstalować wymagane pakiety:

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

Ponieważ opcja PHP-FPM nie jest domyślnie włączona, włącz ją, wywołując następujące polecenia:

sudo a2enmod proxy_fcgi setenvif
sudo a2enconf php8.0-fpm

Następnie uruchom ponownie serwer Apache, aby zmiany zaczęły obowiązywać.

sudo systemctl restart apache2

Krok 2: Zainstaluj PHP 8.0 z Nginx na Ubuntu

Jeśli zdecydujesz się używać PHP 8.0 z instalacją Nginx, najbardziej zalecanym krokiem jest zainstalowanie PHP-FPM w celu przetwarzania plików PHP.

Dlatego zainstaluj PHP i PHP-FPM za pomocą następującego polecenia:

sudo apt install php8.0-fpm

Usługa PHP-FPM powinna uruchomić się automatycznie. Możesz to zweryfikować, jak pokazano:

sudo systemctl status php8.0-fpm

Aby Nginx mógł przetwarzać pliki PHP, skonfiguruj blok serwera Nginx, aktualizując sekcję serwera, jak pokazano:

server {

   # ... some other code

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

Na koniec zrestartuj serwer WWW Nginx, aby zmiany zaczęły obowiązywać.

sudo systemctl restart nginx

Krok 4: Zainstaluj rozszerzenia PHP 8 w Ubuntu

Rozszerzenia PHP to biblioteki rozszerzające funkcjonalność PHP. Te rozszerzenia istnieją w postaci pakietów i można je zainstalować w następujący sposób:

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

Na przykład poniższy przykład instaluje rozszerzenia SNMP, Memcached i MySQL.

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

Krok 5: Sprawdź instalację PHP 8 w Ubuntu

Aby potwierdzić zainstalowaną wersję PHP, uruchom polecenie:

php -v

Dodatkowo możesz utworzyć przykładowy plik php pod adresem /var/www/html, jak pokazano:

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

Wklej następujące wiersze i zapisz plik.

<?php

phpinfo();

?>

Na koniec przejdź do przeglądarki i przeglądaj adres IP serwera, jak pokazano.

http://server-ip/info.php

Powinieneś wyświetlić stronę internetową.

Wniosek

Mamy nadzieję, że możesz teraz zainstalować PHP 8.0 i wygodnie zintegrować go z serwerami internetowymi Apache lub Nginx. Twoja opinia jest bardzo mile widziana.