web-dev-qa-db-fra.com

Comment activer error_reporting uniquement pour l'administrateur?

Il m'est souvent nécessaire de déboguer des problèmes dans la zone d'administration de Joomla et de le faire sur le site actif. Mais je ne veux pas activer error_reporting également pour le front-end. Est-il possible d'activer error_reporting uniquement pour l'administrateur?

5
FFrewin

Mon astuce la plus pratique que j’utilise dans ce cas est de créer un hack temporaire sur le fichier framework.php, à l’intérieur du

/ administrateur/includes/directory.

Le rapport d'erreur pour l'admin est traité dans framework.php ~ ligne 52.

// Set the error_reporting
switch ($config->error_reporting)
{
    case 'default':
    case '-1':
        break;

    case 'none':
    case '0':
        error_reporting(0);

        break;

Apportez les modifications suivantes:

// Set the error_reporting
switch ($config->error_reporting)
{
    case 'default':
    case '-1':
        break;

    case 'none':
    case '0':
        error_reporting(E_ERROR | E_WARNING | E_PARSE);
        ini_set('display_errors', 1);
        //error_reporting(0);

        break;

Une fois le débogage terminé, je reviens sur ces modifications.

3
FFrewin

Essayez ce petit plugin de Viktor Vogel. Ce plugin donne la possibilité de contrôler le reporting par groupe d'utilisateurs. Le gros avantage de ceci est que vous n'avez pas besoin de pirater des fichiers de base.

http://joomla-extensions.kubik-rubik.de/eer-easy-error-reporting

6
Joomla Agency

Vous pouvez ajouter un fichier .htaccess dans le répertoire de l'administrateur avec:

php_flag display_errors on
php_value error_reporting <integer>

Réf.: https://stackoverflow.com/questions/6127980/enabling-error-display-in-php-via-htaccess-only

3
Anibal