NAME
Apache::EmbperlChain - process embedded perl in HTML in the OutputChain
SYNOPSIS
In the configuration of your apache add something like
PerlModule Apache::EmbperlChain
<Files *.html>
SetHandler perl-script
PerlHandler Apache::OutputChain Apache::EmbperlChain Apache::PassFile
</Files>
This will cause all html files to be processed by Embperl.
Now this:
<Location /foo>
SetHandler perl-script
PerlHandler Apache::OutputChain Apache::GzipChain Apache::EmbperlChain My::OwnHandler
</Location>
Any request in the /foo subtree will be processed by My::OwnHandler. The output of that will then be filtered by EmbperlChain, which will process any embedded Perl commands. That output will then be compressed by GzipChain, which will deliver compressed content to the client.
STATUS
This is beta software, and the output chain mechanism itself is also beta.
You currently cannot mix perl's own print
statements that print to STDOUT and the print
or write_client
methods in Apache.pm. If you do that, you will very likely encounter empty documents and probably core dumps too. Since Apache::OutputChain uses perl's print
statement, you'll probably want to stick to that too.
DESCRIPTION
This module calls HTML::Embperl to process any output from another perl handler.
The module seems to work without influencing the other handlers.
EmbperlChain processes every single buffer content it receives via the output chain separately. Therefore care must be taken to print valid embedded perl chunks in the content handler. It is recommended that you use as few print statements as possible in conjunction with the EmbperlChain. The Apache::PassFile module is an example of an efficient file reader for this purpose.
PREREQUISITES
HTML::Embperl, Apache::OutputChain
AUTHOR
Eric Cholet, cholet@logilune.com
Documentation shamelessly copied from Apache::GzipChain by Andreas Koenig.
SEE ALSO
Apache::GzipChain, Apache::SSIChain