|
|
ru.cgi.perl- RU.CGI.PERL ------------------------------------------------------------------ From : Oleh Khoma 2:5020/175.2 15 Aug 2001 20:53:02 To : All Subject : Apache::SSI -------------------------------------------------------------------------------- Привет Всем! Проблема с Apache::SSIChain под mod_perl. :( В конфиге написано: <Files *.cgi> SetHandler perl-script PerlHandler Apache::OutputChain Apache::SSIChain Apache::PerlRun </Files> Если скрипт наружу отдает такой текст: <!--#include virtual="top.html"--> MIDDLE <!--#include virtual="bottom.html"--> То в броузер приходит TOP BOTTOM MIDDLE Причем, порывшись в коде я понял, что ТАК ОHО И ЗАДУМАHО!! Или это давний баг, и просто этот модуль на самом деле никто не юзает, поэтому ошибка не вышла наружу. :(((( ==begin Apache::SSIChain===================== my $html_parser; sub handler { my $r = shift; $html_parser = new Apache::SSI('', $r); Apache::OutputChain::handler($r, __PACKAGE__); } sub PRINT { my $self = shift; $html_parser->text(join '', @_); $self->Apache::OutputChain::PRINT($html_parser->get_output()); } ==end Apache::SSIChain======================= Метод Apache::SSI::get_output на самом деле возвращает только текст _между_ SSI директивами, а текст полученный в результате обработки SSI директив печатается на STDOUT в самом теле модуля!! Так что сначала на output попадают только документы из #include, а потом только весь остальной текст... Что есть асболютно неправильно. :( Что делать? -- Oleh Khoma [Email: okhoma@mail.ru] [ICQ: 55191139] [FIDO: 2:462/90.80] --- ifmail v.2.15 * Origin: FidoNet Online - http://www.fido-online.com (2:5020/175.2) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.cgi.perl/3300deaa3b94.html, оценка из 5, голосов 10
|