httpd-test-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Geoffrey Young <ge...@modperlcookbook.org>
Subject loading mod_perl first?
Date Tue, 08 Feb 2005 16:15:55 GMT
hi all...

in TestConfigPerl we have this logic and comment

    # modules like Embperl.so need mod_perl.so to be loaded first,
    # so make sure that it's loaded before files inherited from the
    # global httpd.conf
    $self->preamble_first(IfModule => '!mod_perl.c', $cfg);

what this does is load mod_perl.so ahead of all other modules, giving it
least priority.  there are a few problems I see with this

  - in 1.3 this is a _very_ untypical setup - mod_perl.so needs to be loaded
last so that it gets first crack at each phase.

  - in 2.X order doesn't matter due to the new hooking API, but it _does_
matter for overriding directives.  that is, you can't load mod_perl.so first
and get first crack at _directive_ parsing.

anyway, I guess what I'm saying is that 99% of the time we want mod_perl to
have the highest priority, but we do the exact opposite with Apache-Test,
which is probably ungood.

now, in all fairness to embperl I don't want to just yank this out without
giving gerald some alternative.  however, I think it's a bad idea to create
a test environment that doesn't accurately represent the most common case.
so, here are some possible solutions...

  - historically I think this was introduced before we had
extra.last.conf.in functionality.  gerald, does using that file help you?

  - we could provide for an extra argument to configure_libmodperl() which
would place mod_perl.so first instead of the (new) default of last.  this
would allow folks like embperl to do something like

  package My::TestConfigurePerl;
  our @ISA = qw(Apache::TestConfigurePerl);
  sub configure_libmodperl {  shift->SUPER::configure_libmodperl(1) }

and have things work the way they did before.  patch attached.

thoughts?

--Geoff

Mime
View raw message