Hi, I have had a similar problem and didn't overcome it.
I am running apache 1.3.6 and the latest Bundle::Apache, mod-perl-1.21
and Apache::SSI-2.08 (all the dependants are from yesterday's CPAN).
When I use the (deprecated according to this Ken's message)
Apache-OutputChain-0.07, I also have the included file prepended before
the output of the script that spits out the include directive. (I didn't
notice it at first as the rendered output looked just like expected in
my browser -- only the HTML source is messed :-) )
However, when I use Filter as suggested in Apache::Filter(3) (see the
config snippet below), the include directive gets propagated on to the
user agent and not expanded. Try http://win.tarunz.org/test.html to see
:-(
<VirtualHost 194.90.246.9>
ServerName win.tarunz.org
Options +Includes -Indexes
PerlModule Apache::Filter;
<FilesMatch ".html?$">
SetHandler perl-script
PerlHandler Apache::SSI
</FilesMatch>
RewriteEngine On
Alias /perl/ /home/www/tarunz/perl/
RewriteRule (^/.*html?$) /perl/code.pl/win$1 [L]
<Directory /home/www/tarunz/perl>
Options +ExecCGI
PerlSendHeader On
SetHandler perl-script
PerlSetVar Filter On
#PerlHandler Apache::OutputChain Apache::SSIChain Apache::Registry
PerlHandler Apache::Registry Apache::SSI
</Directory>
</VirtualHost>
At http://www.tarunz.org/test.html you see the same thing passing only
the SSI filter w/o the chaining/Filter approach, and at, say,
http://lat.tarunz.org/test.html, you have the wrong order via the
chaining module. Config excerpts of these two vhosts follow.
<VirtualHost 194.90.246.9>
ServerName www.tarunz.org
Options +Includes -Indexes
<FilesMatch ".html?$">
SetHandler perl-script
PerlHandler Apache::SSI
</FilesMatch>
</VirtualHost>
<VirtualHost 194.90.246.9>
ServerName lat.tarunz.org
Options +Includes -Indexes
<FilesMatch ".html?$">
SetHandler perl-script
PerlHandler Apache::SSI
</FilesMatch>
RewriteEngine On
Alias /perl/ /home/www/tarunz/perl/
RewriteRule (^/.*html?$) /perl/code.pl/vol$1 [L]
<Directory /home/www/tarunz/perl>
SetHandler perl-script
PerlHandler Apache::OutputChain Apache::SSIChain Apache::Registry
Options +ExecCGI
PerlSendHeader On
</Directory>
</VirtualHost>
What can be wrong?
TIA for any hints,
Vassilii
> Subject: Re: Apache::SSI pain
> Author: Ken Williams <[EMAIL PROTECTED]>
> Date: Tue, 12 Oct 1999 22:13:54 -0500
> The latest version of Apache::Filter has Apache::PerlRunFilter, which
is (to my
> knowledge) the first Filter-aware version of Registry or PerlRun. Try
giving
> that a shot.
>
> The SSIChain & OutputChain side of things isn't so well supported
anymore, it
> may not be worth going in that direction.
>
>
> [EMAIL PROTECTED] (Christopher Hicks) wrote:
> >I've used the lines below and the various other provided incantations
for
> >using Apache::SSI or Apache::SSIChain.
> >
> >PerlModule Apache::SSIChain
> >PerlModule Apache::Filter
> >PerlModule Apache::SSI
> >PerlModule Apache::OutputChain
> >Alias /ssiperl/ /www/perl/ssibin/
> ><Location /ssiperl>
> > SetHandler perl-script
> ># PerlSendHeader On
> > PerlSetVar Filter On
> ># PerlHandler Apache::OutputChain Apache::SSIChain
Apache::Registry
> ># PerlHandler Apache::SSIChain Apache::Registry
> > PerlHandler Apache::Registry Apache::SSI
> > Options +ExecCGI
> ></Location>
> >
> >The SSI's get included, but they're all at the top of the file. Both
of
> >the PerlHandler lines commented out above have SSIChain as the last
thing
> >which is what the docs say to do. But the includes still get
included
> >before the rest of the file.
> >
> >I've scoured the modperl archives. I've read through the source and
> >documentation to Apache::SSI*. Does anyone have any ideas?