Breve tut-post su come settare il proprio .htaccess per mostrare o meno (e qui sarebbe sempre consigliabile per la sicurezza del vostro sito) gli errori generati da php nella renderizzazione della pagina.
Per comodità io distinguerei due casi:
- ambiente di sviluppo, dove l’analisi degli errori è necessaria e se mostrata direttamente come output è molto utile
- ambiente di produzione, dove la comparsa dell’errore può preoccupare l’utente e agevolare malintenzionati.
Nel primo caso il setup ideale è il seguente:
php_flag display_errors on
php_value error_reporting 2047
Per l’ambiente di produzione una gestione oculata, ovviamente se non avete accesso all’error log del server può essere la seguente:
php_flag display_errors off
php_value error_reporting 2047
php_flag log_errors on
php_value log_errors_max_len 100M
php_flag ignore_repeated_errors false
php_flag ignore_repeated_source false
php_flag report_memleaks true
php_flag track_errors true
php_value error_log /var/www/errors.log
Questo genererà un file chiamato errors.log che conterrà tutti gli errori php, non mostrandoli più ai visitatori.
Per aumentare la sicurezza potete anche rendere non leggibile/accessibile in file all’esterno aggiungendo al vostro .htaccess:
<Files errors.log>
Order allow,deny
Deny from all
Satisfy All
</Files>