Привет, всем!
У меня небольшой вопрос, не могу сам решить.
У меня под Apache сервер установлен модуль FastCGI.
Вот настройки, связанные с FastCGI:
<IfModule mod_fastcgi.c>
AddHandler fastcgi-script fcgi fpl
AddType application/x-httpd-fcgi .fcgi .fpl
FastCgiServer /home/httpd/htdocs/jim.iv/cgi-bin/test.fpl -processes 1
</IfModule>
Скрипт test.fpl (см ниже) выдаёт в качестве ответа .xls файл.
Проблема в том, что при сохранении этого
файла под Mozilla 1.2 файл оказавается нулевого размера.
Проверил telnet - действительно выдаётся только header.
Если закомментировать AddHandler или же переименовать test.fpl в
test.pl и соотв. подправить FastCgiServer, то всё начинает работать.
(выдаёт содержимое).
Не подскажет ли кто-нить, почему так происходит?
Если ошибка, то где (FastCGI/WriteExcel)?
Сначала мне казалось, что подменяется MIME type при ответе
для скриптов .fpl, но потом перепроверил telnet'ом - вроде нет,
всё нормально.
=== test.fpl ===
#!/usr/bin/perl
use CGI::Fast qw(-no_xhtml);
use Spreadsheet::WriteExcel;
while (my $f = new CGI::Fast)
{
print
$f->header(
-expires=>'now',
-type=>'application/vnd.ms-excel',
-attachment=>"Test.xls");
my $workbook = Spreadsheet::WriteExcel->new("-"); # Output to STDOUT
my $page = $workbook->addworksheet("Page 1");
$page->set_column(0, 0, 30);
$page->write_string(0, 0, "Hello, world!"); # Just one cell
}
=============================================================================
= Apache-Talk@lists.lexa.ru mailing list =
Mail "unsubscribe apache-talk" to majordomo@lists.lexa.ru if you want to quit.
= Archive avaliable at http://www.lexa.ru/apache-talk =