manpagez: man pages & more
man Apache::PerlRun(3)
Home | html | info | man
Apache::PerlRun(3)    User Contributed Perl Documentation   Apache::PerlRun(3)




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



perl v5.8.8                       2007-07-17                Apache::PerlRun(3)

Mac OS X 10.5 Server - Generated Sun Jun 15 13:13:40 CDT 2008
© manpagez.com 2000-2025
Individual documents may contain additional copyright information.