modperl is configured as:
SetHandler modperl
This is the bare mod_perl handler type, which just calls the Perl*Handler's callback function. If you don't need the features provided by the perl-script handler, with the modperl handler, you can gain even more performance. (This handler isn't available in mod_perl 1.0.)
Unless the Perl*Handler callback running under the modperl handler is configured with:
PerlOptions +SetupEnv
or calls:
$r->subprocess_env;
in a void context (which has the same effect as PerlOptions +SetupEnv for the handler that called it), only the following environment variables are accessible via %ENV:
MOD_PERL and GATEWAY_INTERFACE (always)
PATH and TZ (if you had them defined in the shell or httpd.conf)
Therefore, if you don't want to add the overhead of populating %ENV when you simply want to pass some configuration variables from httpd.conf, consider using PerlSetVar and PerlAddVar instead of PerlSetEnv and PerlPassEnv.
 
Continue to: