php 8.1.25
Questo articolo è stato modificato l’ 8/11/2025 con l’inserimento del seguente paragrafo
Cosa cambia con php 8.1.25 e Xampp 8.1.25-0 su Linux Ubuntu
Con PHP 8.1.25 e la conseguente versione di Xampp, il file xdebug.so non è più installato di default.
Per la sua installazione suggerisco di:
- sul server Ubuntu: avviare il web server Apache di XAMPP;
- aprire un browser, andare sulla pagina
http://localhost/dashboard/phpinfo.phpe copiare l’intero contenuto della pagina negli appunti; - andare sul sito di Xdebug e in particolare sulla pagina con il wizard per scaricare la versione corretta di xdebug;
- incollare gli appunti (con l’ouput della pagina phpinfo.php) nell’apposito spazio della pagina del wizard;
- cliccare sul bottone
[Analyse my phpinfo() ouput]e seguire le istruzioni.
In sostanza si deve eseguire la seguente procedura:
- installare i prerequisiti per compilare le estensioni PHP con il comando
sudo apt-get install php-dev autoconf automakeda cartella root. - scaricare i sorgenti di Xdebug3 (la versione più recente alla data è la xdebug-3.4.7.tgz) dal sito di Xdebug (il link è nelle istruzioni del wizard), ad esempio nella cartella
/home/utente/Scaricati - unzippare il file con il comando
tar -xvzf xdebug-3.4.7.tgz(viene creata la cartellaxdebug-3.4.7) - spostarsi nella nuova cartella con il comando
cd xdebug-3.4.7 - generare l’estensione PHP debug.so con i seguenti comandi: (al termine viene generato il file
xdebug.sonella cartellamodules; prestare attenzione al fatto che vengono utilizzati il comadophpizee il file di configurazionephp-configspecifici di XAMPP).
/opt/lampp/bin/phpize
./configure --with-php-config=/opt/lampp/bin/php-config
make
- copiare il file generato
xdebug.sonella directory appropriata di Xampp con il comandocp modules/xdebug.so /opt/lampp/lib/php/extensions/no-debug-non-zts-20210902/(o simile) - Inserire le seguenti dichiarazioni nel file
/opt/lampp/etc/php.ini, subito sotto la riga;zend_extension=opcache.so
zend_extension = xdebug.so
[XDebug]
xdebug.mode=debug
xdebug.log="/opt/lampp/temp/xdebug_remote.log"
xdebug.client_host="192.168.xxx.xxx"
xdebug.idekey="netbeans.xdebug"
Dove xdebug.client_host richiede l’indirizzo IP del computer dov’è installato l’IDE che usera Xdebug e xdebug.idekey richiede il nome della connessione (nel caso di NetBeans è appunto “netbeans.xdebug”).
- riavviare il server apache
- per controllare il buon esisto della installazione, tornare sulla pagina
http://localhost/dashboard/phpinfo.php, aggiornare i contenuti della pagina e verificare che sia presente la nuova sezione Xdebug con la corretta valorizzazione dei parametri sopra indicati.
xdebug 3
Questo articolo è stato modificato il 6/8/2021 con l’inserimento dei due paragrafi seguenti:
– Cosa cambia con Xdebug 3
– Come attivare XDebug in ambiente Windows/XAMPP
Cosa cambia con Xdebug 3
Il 25/11/2020 è stata rilasciata la versione 3.0.0. di Xdebug.
Le novità introdotte con questa versione sono descritte nella pagina Upgrading from Xdebug 2 to 3 di xdebug.org. In sostanza, cambiano:
- La porta di comunicazione predefinita, che passa da 9000 a 9003;
- La modalità di attivazione di Xdebug.
Configurare l’IDE per l’utilizzo della porta 9003
L’IDE in uso dev’essere configurato per l’utilizzo della porta 9003.
Nel caso di NetBeans, selezionare le voci di menu Tools > Options, poi cliccare sulla voce PHP e infine sul tab Debugging. Impostare la Debugger port al valore 9003 e salvare cliccando sul bottone OK:

Impostare la modalità di attivazione di Xdebug
Con la versione 3 di Xdebug sono diventati obsoleti numerosi parametri di configurazione, ed in particolare il parametro xdebug.remote_enable. Al posto di questo parametro, nel file C:\xampp\php\php.ini deve essere inserito il nuovo parametro xdebug.mode:
[Xdebug]
xdebug.mode=debug
Come attivare XDebug in ambiente Windows/XAMPP
Metodo suggerito da XAMPP
XAMPP fornisce una guida su come attivare XDebug. Per accedere alla guida:
- aprire un browser e aprire la pagina
http://localhost; - nella pagina di benvenuto di XAMPP cliccare sulla voce di menu
HOW-TO Guides - cliccare sul link Activate and Use Xdebug e seguire le istruzioni fornite
Per verificare il buon esito:
- aprire la pagina http://localhost/dashboard/phpinfo.php;
- cercare la parola “xdebug” all’interno della pagina. Se tutto è andato come previsto, nella pagina sarà presente una sezione con tutte le informazioni relative all’installazione di xdebug.
Procedimento alternativo
Se qualcosa non ha funzionato con metodo suggerito da XAMPP, provare con il seguente procedimento:
- verificare se nella cartella C:\xammp\php\ext è presente un file
php_xdebug*.dll. Se non è presente:- aprire la pagina http://localhost/dashboard/phpinfo.php e cercare nella sezione
Core, la versione di PHP attiva; - scaricare il file .dll più recente di XDebug per la versione di PHP in uso (ad esempio:
php_xdebug-3.0.4-8.0-vs16-x86_64.dllper la versione 8.0 di PHP) dalla pagina downloads del sito xdebug.org; - spostare il file nella cartella
C:\xammp\php\ext
- aprire la pagina http://localhost/dashboard/phpinfo.php e cercare nella sezione
- modificare il file
C:\xampp\php\php.iniaggiungendo in coda le seguenti istruzioni (il nome del file .dll deve corrispondere a quello scaricato nello step precedente):
zend_extension = "C:\xampp\php\ext\php_xdebug-3.0.4-8.0-vs16-x86_64.dll"
[Xdebug]
xdebug.mode=debug
- riavviare il web server Apache;
- controllare sulla pagina http://localhost/dashboard/phpinfo.php l’esito dell’attività:
- cercare la parola “xdebug” all’interno della pagina. Se tutto è andato come previsto, nella pagina sarà presente una sezione con tutte le informazioni relative all’installazione di xdebug:

Come attivare XDebug in ambiente Linux Ubuntu/XAMPP
Se hai necessità di attivare XDebug su un server Ubuntu con un ambiente XAMPP e hai provato a cercare supporto in rete, avrai già avuto modo di scoprire che in Internet ci sono ben poche informazioni su come farlo. E quelle che ci sono, sono tra loro discordanti, se non errate.
Ecco allora qui di seguito le istruzioni su come attivare XDebug in una installazione XAMPP su Ubuntu.
Individuare il path dell’estensione xdebug.so
L’installazione di XAMPP comprende già l’estensione XDebug, perciò NON dovrà essere scaricata sul server tramite un comando del tipo:
sudo apt-get install php-xdebug
Invece, va individuato il percorso dove è stato scaricato il file xdebug.so da parte dell’installazione XAMPP, ad esempio tramite il comando “find” da terminale (il percorso standard dove viene installato xampp è /opt/lampp/):

Modificare il file php.ini
Il percorso dove risiede il file xdebug.so va indicato all’interno del file /opt/lampp/etc/php.ini come zend_extension (importante: NON come php extension – vedi la terza riga commentata di fig. 2):

La modifica in formato testuale:
zend_extension=/opt/lampp/lib/php/extensions/no-debug-non-zts-20131226/xdebug.so
La seconda modifica al file /opt/lampp/etc/php.ini riguarda i parametri di XDebug. I parametri da indicare sono i seguenti:

- Il parametro remote_enable attiva il debug.
- Il parametro remote_log indica il file di log dove viene memorizzato lo scambio di informazioni tra IDE e web server. Se i breakpoint non vengono riconosciuti, nel file di log potrebbero esserci utili indicazioni sul perché del mancato funzionamento.
- Il parametro remote_host indica l’indirizzo IP del computer dove risiede l’IDE (“localhost”, oppure “127.0.0.1” se l’IDE risiede sul computer dov’è installato xampp).
- Se l’IDE è configurato sulla porta standard (vedi ad esempio la configurazione di NetBeans nei link utili in fondo al post), il parametro remote_port può essere omesso.
Tenere a mente che da XDebug 3 la porta standard è passata da 9000 a 9003.
Ecco i parametri in formato testuale:
[XDebug]
xdebug.remote_enable=1
xdebug.remote_log="/opt/lampp/temp/xdebug_remote.log"
xdebug.remote_host="192.168.1.3"
;xdebug.remote_port=9000
Verificare che tutto funzioni come atteso
Per verificare se l’estensione xdebug.so è attiva, accedere alla pagina: http://nomesito/dashboard/phpinfo.php. Nella pagina di output deve comparire la sezione con i parametri di XDebug:

Nell’esempio sono state utilizzate le seguenti versioni software:
IDE:
- Product: NetBeans IDE 8.1 (Build 201510222201)
- Java: 1.8.0_60; Java HotSpot(TM) 64-Bit Server VM 25.60-b23
- Runtime: Java(TM) SE Runtime Environment 1.8.0_60-b27
- System: Windows 8.1 version 6.3
Web Server:
- Product: XAMPP Linux 64bit v5.6.28 (PHP version 5.6.28)
- XDebug: Zend Scripting Language Engine v2.6.0 con XDebug v2.2.5
- System: Ubuntu 16.04 LTS 64bit, con ambiente grafico Unity
Risorse online
- Protocollo di comunicazione DBGP (come interpretare quanto viene registrato nel remote.log)
- Configurazione di NetBeans per il debugging (in lingua inglese)

0 commenti