Fazer o processo PHP FastCGI gravar em um log de erro específico?

1

Eu tenho um servidor executando o Lighttpd com três domínios de veiculação dele. Cada usuário recebe seu próprio processo PHP FastCGI para servir conteúdo PHP em todos os seus domínios. O Lighttpd permite gravar os arquivos de log de acesso de cada domínio em arquivos de log exclusivos. Eu também quero escrever erros PHP em três arquivos de log diferentes (um para cada usuário).

Cada processo PHP está lendo seu próprio php.ini (isto foi verificado visualizando phpinfo() output). Cada php.ini especifica o arquivo de log no qual ele deve gravar. Por exemplo:

error_reporting = E_ALL & ~E_NOTICE
display_errors = 0
log_errors = 1
html_errors = 0
fastcgi.logging = 1
error_log = /var/www/vhosts/example.com/logs/php_errors.log

Se eu definir fastcgi.logging = 1 , então os erros do PHP, para todos os três usuários, sempre vão para o log de erros do Lighttpd. Se eu definir fastcgi.logging = 0 , os erros do PHP serão gravados no sistema STDERR. Nesse caso, posso redirecionar o STDERR para cada processo FastCGI para qualquer arquivo que eu goste, mas perco tempo marcando os erros (o que é menos que o ideal).

Então, como habilitar o registro de erros apropriado para meus processos PHP FastCGI através do Lighttpd?

    
por James Sumners 15.08.2010 / 18:52

1 resposta

2

Lighttps suporta apenas um log de erros. Mas pode ser um programa!

Portanto, tente registrar em seu próprio script que divide o log de erros com base em seus próprios critérios. A sintaxe é:

server.errorlog = "|/path/to/script"
    
por 17.08.2010 / 06:05