Manpages

Manpage of Apache::PerlRun

Apache::PerlRun

Section: User Contributed Perl Documentation (3)
Updated: 2001-07-11
Index
Return to Main Contents
 

NAME

Apache::PerlRun - Run unaltered CGI scripts under mod_perl  

SYNOPSIS

 #in httpd.conf


 Alias /cgi-perl/ /perl/apache/scripts/ 
 PerlModule Apache::PerlRun


 <Location /cgi-perl>
 SetHandler perl-script
 PerlHandler Apache::PerlRun
 Options +ExecCGI 
 #optional
 PerlSendHeader On
 ...
 </Location>


 

DESCRIPTION

This module's handler emulates the CGI environment, allowing programmers to write scripts that run under CGI or mod_perl without change. Unlike Apache::Registry, the Apache::PerlRun handler does not cache the script inside of a subroutine. Scripts will be ``compiled'' every request. After the script has run, it's namespace is flushed of all variables and subroutines.

The Apache::Registry handler is much faster than Apache::PerlRun. However, Apache::PerlRun is much faster than CGI as the fork is still avoided and scripts can use modules which have been pre-loaded at server startup time. This module is meant for ``Dirty'' CGI Perl scripts which relied on the single request lifetime of CGI and cannot run under Apache::Registry without cleanup.  

CAVEATS

If your scripts still have problems running under the Apache::PerlRun handler, the PerlRunOnce option can be used so that the process running the script will be shutdown. Add this to your httpd.conf:

 <Location ...>
 PerlSetVar PerlRunOnce On
 ...
 </Location>


 

SEE ALSO

perl(1), mod_perl(3), Apache::Registry(3)  

AUTHOR

Doug MacEachern


 

Index

NAME
SYNOPSIS
DESCRIPTION
CAVEATS
SEE ALSO
AUTHOR

This document was created by man2html, using the manual pages.
Time: 00:12:08 GMT, July 02, 2025