Cacher les erreurs PHP sur n’importe quel hébergement (mutualisé ou dédié)

En phase de développement, l’affichage des erreurs est un gain de temps non négligeable, en revanche sur un site en production, il est fortement conseillé de supprimer l’affichage des erreurs PHP pour des raisons de sécurité.

Exemple d’erreur :

Fatal error: require() [function.require]: Failed opening required ‘WS_RdOOT/lib/comment.class.php’ (include_path=’.:/Applications/MAMP/bin/php5/lib/php’) in/Applications/MAMP/htdocs/fds_local/index.php on line 8

Ce simple message peut donner des informations sur l’architecture de votre application (site web) et ainsi faciliter le travail des pirates.

Sur un serveur dédié ou tout autre hébergement donnant accès au fichier **php.ini **(fichier de configuration de PHP), trouver la ligne :

display_errors = On

Remplacez On par Off et redémarrez le serveur HTTP.

Sur un hébergement dédié ne proposant pas l’accès au fichier php.ini, il est également possible de changer ce paramètre en le modifiant au runtime. Il suffit d’ajouter dans votre code PHP la ligne suivante :

error_reporting(0)

L’affichage des erreurs est maintenant désactivé. Attention pour que ce système soit efficace, il faut inclure cette ligne dans toutes les pages de votre site.

La fonction error_reporting() permet également d’afficher certaines erreurs, les warnings, les notices, etc… Pour plus d’informations reportez-vous à la page dédiée à cette fonction.

PHP 

Voir également