Skip to content

Wszystko o WordPressie, tworzeniu stron — i nie tylko

🐘 Jak zainstalować PHP na Ubuntu 26.04 i 24.04: wersje 8.4 i 8.5 z Nginx i Apache

🐘 Jak zainstalować PHP na Ubuntu 26.04 i 24.04: wersje 8.4 i 8.5 z Nginx i Apache

PHP, język, na którym opiera się ponad połowa sieci. WordPress, Laravel, Magento, Drupal, wszystko to jest napisane w PHP. A kiedy serwer zwraca stronę w 200 ms zamiast 800, najczęściej chodzi właśnie o wersję PHP i o to, jak jest skonfigurowana.

Problem w tym, że standardowe repozytoria Ubuntu zawsze są opóźnione. W Ubuntu 26.04 domyślnie dostępne jest PHP 8.5, to aktualne właśnie teraz, w czerwcu 2026. Jeśli jednak Pana/Pani serwer nadal działa na Ubuntu 24.04, w repozytorium znajduje się PHP 8.3. Tymczasem PHP 8.5 daje wzrost wydajności do 25-30% w porównaniu z 8.2, plus nowe możliwości: asynchroniczne wejście-wyjście, ulepszony kompilator JIT, wbudowana obsługa websocketów.

Poniżej sprawdzony sposób na zainstalowanie aktualnego PHP na Ubuntu 26.04 (lub 24.04) i powiązanie go z Nginx lub Apache. Wszystkie polecenia przetestowano na czystych instalacjach, w praktyce ten zestaw kroków pokrywa zdecydowaną większość scenariuszy.

💡 Szybki przegląd:

  • Proszę określić, jaką wersję Ubuntu Pan/Pani ma: na 26.04 PHP 8.5 instaluje się ze standardowego repozytorium jednym poleceniem; na 24.04 potrzebne jest PPA
  • Proszę wybrać serwer WWW: Apache (moduł lub PHP-FPM) lub Nginx (tylko PHP-FPM)
  • Proszę zainstalować rozszerzenia za pomocą jednego menedżera pakietów i sprawdzić działanie przez testowy plik info.php
  • Proszę usunąć info.php natychmiast po sprawdzeniu, to wyciek danych na serwerze produkcyjnym

PHP 8.5 na Ubuntu 26.04: dwie minuty i gotowe

Ubuntu 26.04 LTS zostało wydane w kwietniu 2026 i dostarcza PHP 8.5 bezpośrednio w głównych repozytoriach. Żadnych PPA, żadnych zewnętrznych kluczy, instalacja zajmuje dokładnie dwa polecenia.

Jeśli jednak Pana/Pani serwer jest na Ubuntu 24.04, proszę czytać dalej: PHP 8.5 instaluje się tam przez PPA nie trudniej, a przy okazji można trzymać kilka wersji równolegle.

Na początek krótka tabela aktualności wersji PHP na czerwiec 2026:

Wersja

Aktywne wsparcie do

Wsparcie bezpieczeństwa do

Kluczowe funkcje

Dla kogo

PHP 8.3

Gru 2025 (zakończone)

Gru 2027

Typizowane stałe klasy, funkcja json_validate i deep-clone właściwości readonly

Produkcja na WordPress/Laravel z pełną kompatybilnością

PHP 8.4

Gru 2026

Gru 2028

Obiekty leniwe, property hooks, parser asynchroniczny

Projekty na Laravel 11+ i nowe prace rozwojowe

PHP 8.5

Gru 2027

Gru 2029

Asynchroniczne I/O, natywne websockety, rozszerzenia PIE, ulepszony JIT

Nowe projekty i ci, którzy chcą maksymalnej wydajności

Dla zdecydowanej większości stron na WordPress, Magento lub Drupal rekomenduję PHP 8.4: jest ono półtora do dwóch razy szybsze niż 8.1 na rzeczywistych stronach, kompatybilne ze wszystkimi nowoczesnymi wtyczkami i otrzymuje aktywne wsparcie do końca 2026 roku. PHP 8.5, dla tych, którzy startują z nowym projektem lub dokładnie wiedzą, że baza kodu jest kompatybilna.

Instalacja PHP z Apache

Apache współpracuje z PHP na dwa sposoby: jako wbudowany moduł lub przez PHP-FPM. Moduł jest prostszy, FPM szybszy i oszczędniejszy w zużyciu pamięci.

PHP jako moduł Apache

Na Ubuntu 26.04 instalacja jednym poleceniem:

1sudo apt update
2sudo apt install -y php libapache2-mod-php

Na Ubuntu 24.04 najpierw proszę dodać PPA (repozytorium Ondřeja Surýego zawiera wszystkie aktualne wersje PHP i jest aktualizowane w dniu oficjalnego wydania):

1sudo apt update
2sudo apt install -y software-properties-common
3sudo add-apt-repository -y ppa:ondrej/php
4sudo apt update
5sudo apt install -y php8.4 libapache2-mod-php8.4

Po instalacji proszę zrestartować Apache, aby moduł się załadował:

1sudo systemctl restart apache2

Apache teraz przetwarza pliki .php przez wbudowany moduł. Aktywną wersję można sprawdzić poleceniem php -v.

PHP-FPM dla Apache

PHP-FPM (FastCGI Process Manager), to osobny proces, który utrzymuje pulę gotowych workerów PHP. Apache komunikuje się z nim przez socket, nie obciążając każdego swojego wątku interpreterem PHP. W praktyce daje to odczuwalną oszczędność pamięci na serwerach z dużą liczbą hostów wirtualnych.

Ubuntu 26.04:

1sudo apt install -y php-fpm

Ubuntu 24.04 (po dodaniu PPA, patrz wyżej):

1sudo apt install -y php8.4-fpm

Domyślnie PHP-FPM nie jest aktywowane w Apache. Włączamy:

Ubuntu 26.04:

1sudo a2enmod proxy_fcgi setenvif
2sudo a2enconf php-fpm
3sudo systemctl restart apache2

Ubuntu 24.04:

1sudo a2enmod proxy_fcgi setenvif
2sudo a2enconf php8.4-fpm
3sudo systemctl restart apache2

Pierwsze polecenie włącza moduły proxy FastCGI, drugie aktywuje konfigurację PHP-FPM dla Apache, trzecie stosuje zmiany. Po tym Apache kieruje zapytania PHP do gniazda: /run/php/php-fpm.sock na 26.04 lub /run/php/php8.4-fpm.sock na 24.04.

Instalacja PHP z Nginx

Nginx nie potrafi samodzielnie przetwarzać PHP, potrzebuje zewnętrznego procesora. Połączenie Nginx + PHP-FPM to de facto standard dla witryn o dużym obciążeniu.

Ubuntu 26.04:

1sudo apt install -y php-fpm

Ubuntu 24.04 (po dodaniu PPA):

1sudo apt install -y php8.4-fpm

Usługa FPM uruchamia się automatycznie. Sprawdzamy:

1systemctl status php8.4-fpm

Na Ubuntu 26.04 natomiast:

1systemctl status php-fpm

Powinni Państwo zobaczyć active (running). Teraz edytujemy blok serwera Nginx. Do sekcji server {} dodajemy obsługę PHP:

Ubuntu 26.04:

1server {
2
3 location ~ \.php$ {
4 include snippets/fastcgi-php.conf;
5 fastcgi_pass unix:/run/php/php-fpm.sock;
6 }
7}

Ubuntu 24.04:

1server {
2
3 location ~ \.php$ {
4 include snippets/fastcgi-php.conf;
5 fastcgi_pass unix:/run/php/php8.4-fpm.sock;
6 }
7}

Po zmianie konfiguracji proszę zrestartować Nginx:

1sudo nginx -t && sudo systemctl restart nginx

nginx -t najpierw waliduje konfigurację, błąd składni nie spowoduje awarii serwera.

Instalacja rozszerzeń PHP

Rozszerzenia PHP to skompilowane biblioteki, które dodają funkcje interakcji z bazami danych, grafiką, pamięciami podręcznymi i dziesiątkami innych systemów.

Na Ubuntu 26.04 pakiety nazywają się według wzorca php-nazwa-rozszerzenia:

1sudo apt install -y php-mysql php-gd php-curl php-mbstring php-xml php-zip php-intl php-opcache php-bcmath

Na Ubuntu 24.04 (przez PPA) pakiety nazywają się php8.4-nazwa-rozszerzenia:

1sudo apt install -y php8.4-mysql php8.4-gd php8.4-curl php8.4-mbstring php8.4-xml php8.4-zip php8.4-intl php8.4-opcache php8.4-bcmath

Co daje każde z nich:

  • mysql, praca z MySQL/MariaDB (PDO + mysqli);
  • gd, przetwarzanie obrazów (miniatury WordPress);
  • curl, zapytania HTTP z kodu;
  • mbstring, praca z UTF-8 i ciągami wielobajtowymi;
  • xml, parsowanie XML (RSS, mapy witryny);
  • zip, archiwizacja (aktualizacje wtyczek, kopie zapasowe);
  • intl, internacjonalizacja (daty, waluty, tłumaczenia);
  • opcache, cache bajtkodu (obowiązkowy dla wydajności);
  • bcmath, precyzyjna matematyka (wymagana przez niektóre wtyczki ecommerce).

Dla witryny WordPress w 2026 roku do podstawowego zestawu warto dodać imagick (przetwarzanie WebP szybsze niż GD) i redis (cache obiektowy):

1sudo apt install -y php-imagick php-redis

Na Ubuntu 26.04 to polecenie wygląda dokładnie tak. Dla Ubuntu 24.04:

1sudo apt install -y php8.4-imagick php8.4-redis

Po zainstalowaniu rozszerzeń proszę zrestartować procesor PHP:

1sudo systemctl restart apache2

Dla PHP-FPM (z Nginx lub Apache w trybie FPM):

1sudo systemctl restart php8.4-fpm

Na Ubuntu 26.04 usługa nazywa się inaczej:

1sudo systemctl restart php-fpm

Sprawdzenie obsługi PHP

Proszę utworzyć plik testowy w katalogu głównym serwera WWW:

1echo "<?php phpinfo(); ?>" | sudo tee /var/www/html/info.php

Proszę otworzyć w przeglądarce http://<IP-адрес-сервера>/info.php. Powinni Państwo zobaczyć fioletową tabelę z informacjami o PHP: wersję, załadowane rozszerzenia, ustawienia pamięci i ścieżki do plików konfiguracyjnych. Proszę się upewnić, że w wierszu „Loaded Configuration File" wskazany jest prawidłowy plik php.ini.

Po sprawdzeniu proszę usunąć plik testowy, phpinfo() na działającej witrynie to wyciek danych o wersjach i ścieżkach:

1sudo rm /var/www/html/info.php

Jak utrzymywać kilka wersji PHP na jednym serwerze

Różne wersje PHP z repozytorium Ondřeja Surý doskonale ze sobą współistnieją. Może Pan utrzymywać PHP 7.4, 8.3 i 8.4 jednocześnie i przełączać strony między nimi.

Instalacja dodatkowej wersji (na przykład PHP 8.3 obok 8.4):

1sudo apt install -y php8.3 php8.3-fpm php8.3-mysql php8.3-gd php8.3-curl php8.3-mbstring php8.3-xml php8.3-zip php8.3-intl

Każda wersja działa na własnym sockecie: /run/php/php8.3-fpm.sock, /run/php/php8.4-fpm.sock. W bloku serwera Nginx wystarczy wskazać odpowiedni socket w fastcgi_pass, a konkretna strona będzie używać wybranej wersji.

Przełączanie wersji PHP w wierszu poleceń:

1sudo update-alternatives --config php

Jest to wygodne przy stopniowej migracji: jedną stronę przełączył Pan na 8.4, sprawdził Pan, przełączył Pan następną.

⁉️🤔 Często zadawane pytania

Czy trzeba usuwać starą wersję PHP przed instalacją nowej?

Nie. Różne wersje PHP z PPA Ondřeja Surý współistnieją bez konfliktów. Może Pan zainstalować 8.4 obok 8.1 i przełączać witryny pojedynczo przez sudo update-alternatives --config php. Na Ubuntu 26.04 systemowy PHP 8.5 również nie przeszkadza w instalacji innych wersji z PPA.

Co zrobić, jeśli Nginx zwraca 502 Bad Gateway po skonfigurowaniu PHP?

502 w zestawie Nginx + PHP-FPM prawie zawsze oznacza, że Nginx nie może połączyć się z gniazdem PHP-FPM. Proszę sprawdzić trzy rzeczy: czy usługa jest uruchomiona (systemctl status php-fpm lub systemctl status php8.4-fpm), czy ścieżka do gniazda w fastcgi_pass zgadza się z rzeczywistą (ls -la /run/php/) i czy użytkownik, na którym działa Nginx (www-data), zgadza się z właścicielem gniazda. W większości przypadków pomaga sudo systemctl restart php-fpm.

Czy można zainstalować PHP 8.5 na Ubuntu 24.04?

Tak, przez PPA Ondřeja Surý: sudo apt install -y php8.5 php8.5-fpm (po dodaniu repozytorium). PHP 8.5 będzie działać na swoim gnieździe /run/php/php8.5-fpm.sock równolegle z innymi wersjami. Proszę jednak wziąć pod uwagę: jeśli Pana wtyczki lub framework nie były testowane pod 8.5, proszę wybrać 8.4, jest bezpieczniejszy dla środowiska produkcyjnego.

Jakie rozszerzenia PHP są krytyczne dla WordPressa w 2026 roku?

Minimalny zestaw: mysql, gd, curl, mbstring, xml, zip, intl oraz opcache. Dla wydajności proszę dodać redis (pamięć podręczna obiektów) oraz imagick (przetwarzanie obrazów szybsze niż GD, szczególnie WebP). Jeśli witryna pracuje z formatem WebP, imagick jest obowiązkowy: GD w starych kompilacjach nie obsługuje WebP przy zmianie rozmiaru.

Czy warto aktualizować Ubuntu z 24.04 do 26.04 ze względu na PHP 8.5?

Jeśli serwer jest na Ubuntu 24.04, PHP 8.5 jest dostępny przez PPA w minutę, nie ma pilnej potrzeby aktualizacji systemu operacyjnego. Standardowe wsparcie dla 24.04 kończy się jednak w kwietniu 2029, więc jest czas. Na 26.04 otrzymuje Pan świeże wersje Nginx, MySQL 8.4 i bibliotek systemowych „od ręki", bez PPA. Proces aktualizacji przez do-release-upgrade, ale najpierw proszę zrobić pełną kopię zapasową.

PHP 8.5 zmienił nazwy pakietów, jaka jest różnica w stosunku do 8.4?

Na Ubuntu 26.04 pakiety nazywają się php, php-fpm, php-mysql (bez numeru wersji), ponieważ 8.5 jest jedyną wersją w repozytorium systemowym. Są to metapakiety: php zawsze pobiera aktualną wersję systemową. Przy instalacji innych wersji przez PPA używany jest stary schemat: php8.4, php8.4-fpm, php8.4-mysql.

PHP na serwerze w 2026: harmonogram podsumowujący

Instalacja aktualnego PHP na Ubuntu to nie fizyka jądrowa. Na 26.04 PHP 8.5 stawia się jedną komendą z repozytorium systemowego. Na 24.04 jedno PPA, dwie komendy i ma Pan wersję 8.4 lub 8.5 zamiast przestarzałej 8.3.

Różnica w wydajności jest realna: na tym samym serwerze PHP 8.4 przetwarza stronę WordPressa półtora do dwóch razy szybciej niż 8.1. To mniej odrzuceń z powodu timeoutu i lepsze pozycje w wynikach wyszukiwania, nikt nie odwołał Core Web Vitals.

Najważniejszy wniosek: proszę stawiać PHP-FPM zamiast modułu Apache, dobierać wersję PHP pod kątem kompatybilności Pana witryny (8.4 to bezpieczny wybór na czerwiec 2026) i nie zapominać o ponownym uruchomieniu usługi po instalacji rozszerzeń. Zainstalował Pan, przetestował, usunął info.php.

Jeśli materiał był przydatny, proszę obejrzeć instrukcję wideo poniżej, te same kroki na żywo na czystym Ubuntu 26.04.