04. PHP-FPM telepítése

PHP 8.4

PHP 8.4 telepítése

A hivatalos WSL alatti Debian disztribúcióban nincsen, csak PHP 8.1-ig támogatás (2025.06). Ahhoz, hogy PHP 8.4-et tegyünk fel az alábbi parancsokat kell kiadni.

Lényegében frissíteni kell a repository-t, majd 

sudo apt-get update 
sudo apt-get -y install lsb-release ca-certificates curl apt-transport-https 
sudo curl -sSLo /tmp/debsuryorg-archive-keyring.deb https://packages.sury.org/debsuryorg-archive-keyring.deb 
sudo dpkg -i /tmp/debsuryorg-archive-keyring.deb 
sudo sh -c 'echo "deb [signed-by=/usr/share/keyrings/deb.sury.org-php.gpg] https://packages.sury.org/php/ $(lsb_release -sc) main" > /etc/apt/sources.list.d/php.list' 
sudo apt-get update

Utána már lehet telepíteni a PHP8.4.x-et:

PHP8.4-CLI és PHP8.4-FPM telepítése

A parancssori (CLI) és az FPM változat együtt ajánlott. Az FPM egy protokoll neve, amely a modul és a CGI között van és egyesíti a CGI és a modul előnyeit. A két verzió telepítése:

sudo apt install php8.4-cli php8.4-fpm

Ekkor a PHP az apache-al az alábbi fájlon keresztül kommunikál: /run/php/php8.4-fpm.sock

A modul változatot ne telepítsük, mert az FPM változattal ütközni fog!!!!

sudo apt install php8.4-cli libapache2-mod-php8.4

A telepítés után érdemes ellenőrizni, hogy minden ok-e.

php -v

Telepítsük a PHP8.4-FPM szolgáltatást (service):

sudo systemctl start php8.4-fpm

Ellenőrizzük, hogy működik-e

sudo systemctl status php8.4-fpm

Állítsuk be, hogy automatikusan induljon a rendszerrel együtt.

sudo systemctl enable php8.4-fpm

Néhány FPM beállítás beállítása | ellenőrzése

Keressük meg ezt a fájlt: /etc/php/8.4/fpm/pool.d/www.conf

Keressük meg benne a listen parancsot és írjuk be az alábbit: listen = /run/php/php8.4-fpm.sock

Ennek hatására a PHP és az Apache ezen a fájlon keresztül fog kommunikálni, ami gyorsabb, mintha TCP/IP-ne keresztül kommunikálna. Utána indítsuk újra a szolgáltatást:

sudo systemctl restart php8.4-fpm

Apache konfiguráció ellenőrzése

Keressük meg az Apache fő konfigurációját ( /etc/apache2/apache2.conf ) vagy a virtuális host-ok ( /etc/apache2/sites-available/<virtual-host-neve.ctl  )konfigurációját. 

Írd be az alábbiakat:

<FilesMatch \.php$>
    SetHandler "proxy:unix:/run/php/php8.4-fpm.sock|fcgi://localhost/"
</FilesMatch>

Indítsd újra a Apache-ot: 

sudo systemctl restart apache2

PHP kiterjesztések telepítése

A PHP-nak rengeteg kiterjesztése van (extension), amelyeket érdemes telepíteni. Vagy egyesével telepítjük fel a kiterjesztéseket. Pl. a grafikus csomag telepítése:

sudo apt install php8.4-gd

vagy teljes csomagot használunk:

sudo apt install php8.4-common php8.4-{bcmath,bz2,curl,gd,gmp,intl,mbstring,opcache,readline,xml,zip}

Miután ez megvan integráljuk a PHP-t az Apache-ba:

sudo a2enconf php8.4-fpm

Utána meg lehet győződni arról, hogy az Apache működik-e.

 sudo systemctl status apache2

Ha nem ír ki hibát, akkor működik.

Korábbi php változatok törlése, ha valamit eltoltunk menet közben.

sudo apt purge '^php8.3.*'
sudo apt purge '^php8.2.*'
sudo apt purge '^php8.1.*'

Ha mindent jól csináltál, akkor hozd létre a /var/www/html/phpinfo.php fájlt és írd bele az alábbi sorokat:

<?php
phpinfo();
?>

Ha meghívod a Windows böngészőből a http://172.31.128.41/phpinfo.php címet, akkor a telepített PHP infojának kell megjelennie és fut a PHP:

PHPinfo