Приветствую, работаю с FCGI, и столкнулся с непонятной проблемой, дело в том что я не могу правильно передать дескриптор STDERR, что бы он записывал логи ошибок в файл:
| Код | ... my $request = FCGI::Request(\*STDIN, \*STDOUT, \*STDERR, \%ENV, $socket, ($debug ? FCGI::FAIL_ACCEPT_ON_INTR : ())); ...
|
Перенаправляю дескриптор в файл выше строчки, и передаю его:
| Код | open(STDERR,">>$Config::fcgi_log_file") or die "$!"; ..... my $request = FCGI::Request(\*STDIN, \*STDOUT, \*STDERR, \%ENV, $socket, ($debug ? FCGI::FAIL_ACCEPT_ON_INTR : ()));
|
Код отказывается работать, точнее не пишет в файл ошибки, но если передать в место STDERR пустой дескриптор скажем TEST то тогда STDEER пишет лог в нужный файл.
| Код | open(STDERR,">>$Config::fcgi_log_file") or die "$!"; ..... my $request = FCGI::Request(\*STDIN, \*STDOUT, \*TEST, \%ENV, $socket, ($debug ? FCGI::FAIL_ACCEPT_ON_INTR : ()));
|
Вот так он пишет логи, кто сталкивался с этим, поясните почему так происходит? может есть нормальное решение?
|