You are viewing a plain text version of this content. The canonical link for it is here.
Posted to modperl@perl.apache.org by Allen Day <al...@ucla.edu> on 2002/05/20 06:01:53 UTC
sending CGI ouput through a handler
Okay, I realize this has probably been covered before, but I couldn't find
anything in the archive...
I have a configuration like this:
<Location />
SetHandler perl-script
PerlHandler My::Handler
</Location>
My::Handler takes the requested file and adds some markup to it with the
Template Toolkit if the MIMEtype of the file is text/html. I want to be
able to use the same handler to also add markup to the output of executed
CGI. What is the best way to do this?
Should I set up a separate location for the CGI (I'm doing this,
actually) ? Are there any extra directives needed?
TIA
Allen
Re: sending CGI ouput through a handler
Posted by Perrin Harkins <pe...@elem.com>.
> My::Handler takes the requested file and adds some markup to it with
the
> Template Toolkit if the MIMEtype of the file is text/html. I want to
be
> able to use the same handler to also add markup to the output of
executed
> CGI. What is the best way to do this?
You can't feed the output of mod_cgi to mod_perl, at least not in Apache
1.x. The best thing to do (at least for performance) would be to
rewrite the CGI so that you call it as a module from your handler.
Another approach would be to use Apache::Filter to grab the output from
PerlRun or Regsistry. You could also sublass PerlRun or Registry and
add your handler code to it.
- Perrin
Re: sending CGI ouput through a handler
Posted by Stas Bekman <st...@stason.org>.
Allen Day wrote:
> Okay, I realize this has probably been covered before, but I couldn't find
> anything in the archive...
>
> I have a configuration like this:
>
> <Location />
> SetHandler perl-script
> PerlHandler My::Handler
> </Location>
>
> My::Handler takes the requested file and adds some markup to it with the
> Template Toolkit if the MIMEtype of the file is text/html. I want to be
> able to use the same handler to also add markup to the output of executed
> CGI. What is the best way to do this?
>
> Should I set up a separate location for the CGI (I'm doing this,
> actually) ? Are there any extra directives needed?
by CGI do you mean a script running under mod_cgi? If it's registry you
should be able to use stacked handlers:
http://perl.apache.org/release/docs/1.0/guide/config.html#Stacked_Handlers
__________________________________________________________________
Stas Bekman JAm_pH ------> Just Another mod_perl Hacker
http://stason.org/ mod_perl Guide ---> http://perl.apache.org
mailto:stas@stason.org http://use.perl.org http://apacheweek.com
http://modperlbook.org http://apache.org http://ticketmaster.com