disable error.log para diretório específico

1

como desabilitar o relatório de erros para error.log no Apache para um diretório específico (phpmyadmin)?

  • no httpd.conf
  • no .htaccess
por clarkk 06.07.2011 / 10:31

1 resposta

1

Para o errorlog , não há como construir isso. Você pode usar o log piping para fazer isso encanando as mensagens de log para algo que irá ignorar mensagens contendo alguma string especificada.

Defina um canal para lidar com o log de erros

ErrorLog "|/usr/local/bin/httpd_errors >>/var/log/apache2/error.log" 

O conteúdo do script httpd_errors pode ser tão simples quanto

#!/usr/local/bin/perl

$|=1;

while (<STDIN>)
    {
     $ErrorMessage=$_;
     if ( $ErrorMssage !~ 'phpmyadmin' )
        {
         print $ErrorMessage;
        }
    }

Isso aguarda que as mensagens cheguem em stdin e as imprima somente se elas não contiverem a string phpmyadmin .

Se você deseja ignorar várias mensagens de erro,

#!/usr/local/bin/perl
#unbuffer stdout
$|=1;
#add the strings to match below separated by |
$filter = 'phpmyadmin|setup.php';
while (<STDIN>)
    {
     $ErrorMessage=$_;
     if ( $ErrorMessage !~ m/($filter)/  )
        {
         print $ErrorMessage;
        }
    }
    
por 06.07.2011 / 18:17

Tags