Come installare PHP 8.4 su Ubuntu 24.04
PHP (Hypertext Preprocessor) è un linguaggio di scripting lato server open source ampiamente utilizzato, progettato per lo sviluppo web. È particolarmente adatto per la creazione di pagine web e applicazioni dinamiche.
Aggiorna il sistema operativo
Aggiorna il tuo sistema operativo Ubuntu 22.04 per assicurarti che tutti i pacchetti esistenti siano aggiornati:
# apt update && apt upgrade
Aggiungi repository PHP
Di default, PHP 8.4 non è incluso nel repository predefinito di Ubuntu 24.04. Quindi dovrai aggiungere Ondrej Sury PPA al tuo sistema.
Per prima cosa, installa i pacchetti richiesti utilizzando il seguente comando:
# apt-get install ca-certificates apt-transport-https software-properties-common
Una volta installati tutti i pacchetti, aggiungi questo PPA utilizzando il seguente comando:
# add-apt-repository ppa:ondrej/php
Una volta terminato, aggiorna il repository con il seguente comando:
# apt-get update
Installa PHP 8.4
Ora puoi installare PHP 8.4 utilizzando il seguente comando:
# apt-get install php8.4
Una volta installato PHP, puoi controllare la versione PHP sul tuo sistema con il seguente comando:
# php8.4 --version
Produzione:
# PHP 8.4.1 (cli) (built: Nov 21 2024 14:54:00) (NTS) Copyright (c) The PHP Group Zend Engine v4.4.1, Copyright (c) Zend Technologies with Zend OPcache v8.4.1, Copyright (c), by Zend Technologies
Installa PHP 8.4 per Apache
Per installare PHP come modulo Apache, eseguire:
# apt install libapache2-mod-php8.4
Quindi, riavvia Apache per integrare il nuovo modulo PHP:
# systemctl restart apache2
Per verificare che PHP funzioni con il server web Apache, puoi creare un file PHP di prova:
echo "<?php phpinfo(); ?>" | tee /var/www/html/info.php
Quindi apri il tuo browser web e digita http://your-IP-address/info.php e dovresti vedere la pagina di informazioni PHP.
Installa PHP 8.4 FPM per Nginx
Per il server web Nginx, è necessario installare il servizio FPM. È possibile installarlo utilizzando il seguente comando:
# apt install php8.4-fpm
Una volta completata l’installazione, è possibile confermare che il PHP-FPM
servizio è stato installato correttamente con il seguente comando:
# systemctl status php8.4-fpm
Produzione:
● php8.4-fpm.service - The PHP 8.4 FastCGI Process Manager Loaded: loaded (/usr/lib/systemd/system/php8.4-fpm.service; enabled; preset: enabled) Active: active (running) Docs: man:php-fpm8.4(8) Process: 11741 ExecStartPost=/usr/lib/php/php-fpm-socket-helper install /run/php/php-fpm.sock /etc/php/8.4/fpm/pool.d/www.conf 84 (code=exited, status=0/SUCCESS) Main PID: 11737 (php-fpm8.4) Status: "Processes active: 0, idle: 2, Requests: 0, slow: 0, Traffic: 0.00req/sec" Tasks: 3 (limit: 2218) Memory: 8.0M (peak: 9.0M) CPU: 116ms CGroup: /system.slice/php8.4-fpm.service ├─11737 "php-fpm: master process (/etc/php/8.4/fpm/php-fpm.conf)" ├─11739 "php-fpm: pool www" └─11740 "php-fpm: pool www"
Prova PHP e PHP-FPM
Per configurare Nginx per utilizzare PHP-FPM, è necessario modificare il file di configurazione Nginx predefinito:
# nano /etc/nginx/sites-available/default
Aggiungere le seguenti configurazioni al file.
location ~ \.php$ { include snippets/fastcgi-php.conf; fastcgi_pass unix:/var/run/php/php8.4-fpm.sock; }
Controlla la sintassi di Nginx:
# nginx -t nginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is successful
Quindi crea un file PHP di prova simile alla configurazione di Apache:
echo "<?php phpinfo(); ?>" | tee /var/www/html/info.php
Per implementare le modifiche, riavviare il webserver Nginx:
# systemctl restart nginx
Quindi apri il tuo browser web e digita http://your-IP-address/info.php e dovresti vedere la pagina di informazioni PHP.
Installa l’estensione PHP
L’installazione delle estensioni PHP è semplice con la sintassi indicata di seguito:
# sudo apt install php8.4-[extension]
Sostituisci [estensione] con l’estensione che vuoi installare, se vuoi aggiungere più estensioni includile tra parentesi graffe:
# apt install php8.4-mysql php8.4-imap php8.4-ldap php8.4-xml php8.4-curl php8.4-mbstring php8.4-zip
Per controllare i moduli PHP caricati utilizzare il comando:
# php8.4 -m
Esempio di output:
[PHP Modules] .............. imap json ldap libxml mbstring mysqli mysqlnd openssl pcntl pcre PDO pdo_mysql Phar posix .............. [Zend Modules] Zend OPcache
Esecuzione di PHP 8.4 con altre versioni
Invece di rimuovere le vecchie versioni di PHP , è anche possibile eseguire più versioni di PHP affiancate.
Il comando update-alternatives fornisce un modo semplice per passare da una versione di PHP all’altra per PHP CLI.
# update-alternatives --config php
Verrà visualizzato un messaggio che richiede di selezionare in modo interattivo il percorso binario PHP alternativo php
a cui punta.
There are 2 choices for the alternative php (providing /usr/bin/php). Selection Path Priority Status ------------------------------------------------------------ * 0 /usr/bin/php.default 100 auto mode 1 /usr/bin/php.default 100 manual mode 2 /usr/bin/php8.3 83 manual mode 3 /usr/bin/php8.4 84 manual mode
Per impostare il percorso senza il prompt interattivo:
# update-alternatives --set php /usr/bin/php8.4