man ModPerl::PerlRun () - Run unaltered CGI scripts under mod_perl

NAME

ModPerl::PerlRun - Run unaltered CGI scripts under mod_perl

Synopsis

  # httpd.conf
  PerlModule ModPerl::PerlRun
  Alias /perl-run/ /home/httpd/perl/
  <Location /perl-run>
      SetHandler perl-script
      PerlResponseHandler ModPerl::PerlRun
      PerlOptions +ParseHeaders
      Options +ExecCGI
  </Location>

Description

META: document that for now we don't chdir() into the script's dir, because it affects the whole process under threads. CWModPerl::PerlRunPrefork should be used by those who run only under prefork MPM.

Special Blocks

When running under the CWModPerl::PerlRun handler CWBEGIN blocks behave as follows:

•
CWBEGIN blocks defined in scripts running under the CWModPerl::PerlRun handler are executed on each and every request.
•
CWBEGIN blocks defined in modules loaded from scripts running under CWModPerl::PerlRun (and which weren't already loaded prior to the request) are executed on each and every request only if those modules declare no package. If a package is declared CWBEGIN blocks will be run only the first time each module is loaded, since those modules don't get reloaded on subsequent requests.

See also CWBEGIN blocks in mod_perl handlers. Same as normal mod_perl handlers. Same as CWModPerl::Registry.

Authors

Doug MacEachern

Stas Bekman

See Also

CWModPerl::RegistryCooker and CWModPerl::Registry.