perl-modperl mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Geoffrey Young <ge...@modperlcookbook.org>
Subject Re: [MP2] apachectl doesn't run PerlModule code?
Date Tue, 27 Apr 2004 16:22:07 GMT

> For example, if I put the following at the end of an almost generic 
> httpd.conf (only host and port changed from the default install):
> 
>     LoadModule perl_module modules/mod_perl.so
>     PerlModule Not::Here
> 
> Running 'apachectl start' fails as expected because Not::Here doesn't exist.
> 
> Running 'apachectl configtest' reports 'Syntax OK'.

I think you're running into the "perl module loading is deferred" thingy
that is the default behavior in mp2. if you stuck a valid <Perl> section
above it you would probably see configtest fail, since an interpreter would
be loaded.

basically, PerlModule no longer runs module code at the time that the
PerlModule directive is parsed unless an interpreter is already resident in
the configuration process.  I'm not entirely certain as to the rationale for
this, but I think it has something to do with startup times, overhead,
interpreter pools, etc.

now, I have problems with this sometimes - there are quite a few places
where I want PerlModule to run code, and _not_ doing so presents a vary
large problem.  in fact, people who depend on the mp1 behavior currently
have no recourse except to force in an interpreter via <Perl>.  well, in mp2
we also have PerlLoadModule, which always runs module code on loading,
except that it is exclusively for the use of directive handlers (another
mistake I think, but not a battle I was able to win).

HTH

--Geoff

-- 
Report problems: http://perl.apache.org/bugs/
Mail list info: http://perl.apache.org/maillist/modperl.html
List etiquette: http://perl.apache.org/maillist/email-etiquette.html


Mime
View raw message