Re: apache2 or mod_perl2 oddball error

William Bulley <[email protected]>
Newsgroups gmane.comp.apache.mod-perl
Message-ID <[email protected]>
According to Andr? Warnier <[email protected]> on Sun, 06/19/11 at 17:52:
> 
> When Apache executes a LoadModule directive, it not only loads that module 
> code in memory. The module code also gets called at that point, and in 
>  return the module tells Apache which further configuration directives "it 
> is interested in".
> For example, when Apache encounters "LoadModule mod_perl.so", mod_perl gets 
> loaded, and tells Apache that it is interested in processing further 
> directives such as "PerlModule", PerlRequire, PerlSetVar, etc.. (all the 
> other mod_perl specific directives).
> (Otherwise,Apache would not "know" these directives, and would flag them as 
> errors right away).
> Subsequently, when Apache detects one of these module-specific directives, 
> it passes the directive line to mod_perl, to parse and interpret that line.
> If mod_perl then detects a syntax (or other) error in that line, it returns 
> an error status to Apache, and Apache as a result refuses to continue 
> parsing the Apache configuration file, and refuses to start.

Thanks.  This is very educational information.

> In other words, maybe for mod_perl 5.x, a directive such as
> PerlModule "Apache2::Const -compile => ':common'"
> may have been acceptable, and did not cause mod_perl to return an error to 
> Apache.
> But for mod_perl 5.x+1, that same form is not acceptable anymore, and 
> returns an error.
> And *that* is what prevents Apache to start.

Well, I believe that isn't the problem here, but I'm still struggling
with the problem.

> Personally, I have never seen before a PerlModule directive like
> PerlModule "Apache2::Const -compile => ':common'"
> In an Apache configuration file, I have always seem only PerlModule 
> directives like
> PerlModule Apache2::Const
> (and that is also what the on-line mod_perl documentation seems to indicate 
> as the valid format, see 
> http://perl.apache.org/docs/2.0/user/config/config.html#C_PerlModule_)

Thanks.  I did not write that line.  The include file where that line is
found came with the application that requires mod_perl.  Prior to using
this application I had no need to use mod_perl.  Talk about a trial by fire...

Perhaps the reason that syntax is used may have come from this POD:

   <http://search.cpan.org/~phred/mod_perl-2.0.5/docs/api/Apache2/Const.pod#:common>

> So, if you just remove the "-compile => ':common'" part, does Apache still 
> fail to start (at the same point I mean) ?

You may have missed my earlier replies, or maybe I've lost track which list
I have been posting to (I've tried both apache and mod_perl lists to date).

This suggestion was given earlier and I tried it late last week to no avail.
I still got the same error complaining about the Apache2::Const module.
My belief is that something in Perl 5.14 is causing this problem since when
I renamed the include file in question (effectively removing it from the
list of *.conf files that httpd.conf was told to read), the problem went
away!  I was able to start the apache server (several processes running)
and exercised it with other HTML files (not the application in question).

> That you may then see errors at some other point (because of the missing 
> "-compile => ':common'") is a different matter, and can be resolved 
> separately.

If I knew how to track down this problem further, I would be happy to,
but this is all new territory for me.  I am now contemplating rebuilding
my system from scratch using Perl 5.12.3 which worked (in the apache
sense) prior to my June 9th upgrade.  Unfortunately, this is a vary large
task and deprives me of some of the things in Perl 5.14 that might be
good to have.  Of course, if this is a 5.14 problem, then I should do
the down-grade, but not knowing is making this decision more difficult.

Regards,

web...

--
William Bulley                     Email: [email protected]

72 characters width template ----------------------------------------->|
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.