Abilitare i log degli errori PHP sul web hosting

Come configurare la visualizzazione degli errori e il logging per le applicazioni PHP.

Analizzare regolarmente i log PHP è fondamentale per individuare errori, avvisi e bug prima che si ripercuotano sull'esperienza degli utenti. Si consiglia vivamente di tenere sempre attiva la registrazione degli errori, soprattutto durante le fasi di sviluppo e test.

1. Abilitare i log PHP tramite .htaccess

Il modo più efficace per abilitare la visualizzazione e la registrazione degli errori in un ambiente di web hosting è aggiungere delle direttive specifiche al file .htaccess nella cartella radice del tuo sito.

Configurazione di base:

php_value display_errors On
php_value display_startup_errors On

Configurazione avanzata (consigliata):

php_flag display_errors On
php_flag display_startup_errors On
php_flag log_errors On
php_flag ignore_repeated_errors Off
php_flag ignore_repeated_source Off
php_flag track_errors On

php_value error_reporting -1
php_value error_log /home/ваш_логин/public_html/php-errors.log

Una volta aggiunte queste righe, gli errori PHP verranno:

  • Mostrati direttamente a schermo (quando display_errors è attivo)
  • Registrati nel file php-errors.log specificato

2. Abilitare gli errori all'interno di uno script PHP

Se hai bisogno di fare il debug di un singolo script, puoi abilitare la segnalazione degli errori direttamente nel file PHP aggiungendo il seguente codice all'inizio dello script:

ini_set('display_errors', '1');
ini_set('display_startup_errors', '1');
ini_set('error_reporting', E_ALL);

3. Configurazione tramite php.ini

Se il tuo ambiente di hosting consente l'accesso a un file php.ini personalizzato, puoi gestire queste impostazioni a livello globale:

error_reporting = E_ALL
display_errors = On
display_startup_errors = On
log_errors = On
log_errors_max_len = 1024
error_log = /home/ваш_логин/public_html/php-errors.log

Registrazione per i Cron job

Gli errori generati da script eseguiti tramite Cron o da riga di comando (CLI) non compaiono nei log standard del server web. Per catturare questo output, reindirizza il risultato dell'esecuzione verso un file di log dedicato nel tuo comando Cron:

/usr/local/bin/php /home/ваш_логин/public_html/site.ru/script.php &>> /home/ваш_логин/logs/cron.log

È buona pratica creare una directory /logs separata nella tua home folder per conservare in modo sicuro tutti i log di sistema e relativi ai Cron.

Best practice

  • Modalità sviluppo: tieni display_errors = On per ricevere feedback immediati durante la scrittura del codice.
  • Siti in produzione: disabilita sempre display_errors sui siti live per evitare che informazioni sensibili sui percorsi vengano esposte ai visitatori. Assicurati che log_errors = On rimanga attivo per il monitoraggio in background.
  • Manutenzione: controlla periodicamente il file php-errors.log per individuare problemi nascosti che non bloccano necessariamente la pagina, ma ne degradano le prestazioni.
  • Cache: dopo aver aggiornato le impostazioni PHP, svuota la cache del browser e, se applicabile, quella di OPCache per vedere le modifiche applicate.

Aiuto

Hai domande o ti serve una mano? Scrivici tramite il sistema di ticket — siamo sempre qui per aiutarti!

Hai bisogno di aiuto?I nostri ingegneri ti aiuteranno gratuitamente con qualsiasi domanda in pochi minutiContattaci