httpd-test-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Stas Bekman <s...@stason.org>
Subject Re: Test failure with Apache::Test 1.03, Apache/2.0.40 and perl-5.8.1-to-be
Date Tue, 15 Jul 2003 16:35:01 GMT
slaven@rezic.de wrote:
>>On Fri, 11 Jul 2003, Stas Bekman wrote:
>>
>>
>>>slaven@rezic.de wrote:
>>
>>[ .. ]
>>
>>>>Now I get a different failure ("Alias" is now invalid):
>>
>>[ .. ]
>>
>>
>>>>waiting for server to start: .Syntax error on line 76 of
>>>>/home/slavenr/work2/httpd-test/perl-framework/Apache-Test/t/conf/httpd.conf:
>>>>Invalid command 'Alias', perhaps mis-spelled or defined by a
>>>>module not included in the server configuration !!!
>>>
>>>Do you have mod_alias available?
>>>
>>>% prefork/bin/httpd -l | grep mod_alias
>>>   mod_alias.c
>>>
>>>I suppose we could run this command to check for prerequisites
>>>and die if they aren't available?
>>
>>I'm not sure what the best way to go about this is, but maybe the
>>following might help in deciding ... I think the problem arises
>>when Apache-Test either doesn't find the right httpd.conf
>>corresponding to the found httpd (as might happen, for example,
>>when httpd is a symlink to the real one), or it finds and parses
>>a bogus one (this happened to me a couple of times when the
>>installed httpd.conf wasn't edited to include the minimal
>>LoadModule directives, and I forgot to check). So it's not
>>necessarily a problem with using an incorrect httpd (although
>>that may still happen), but rather incorrect or missing
>>information from httpd.conf is being used.
>>
>>If the above is on the right track, one possibility is to
>>do the following (in cases where possible LoadModule directives
>>are needed by Apache-Test):
>>- die if an httpd.conf isn't found in a directory conf/ in an
>>expected relative location to httpd (or perhaps add an option
>>allowing a user to specify where httpd.conf is, if it's in
>>a different relative to httpd).
>>- test the configuration, and if an "Invalid Command ..." error
>>is generated, suggest to the user to either supply the right
>>httpd.conf, or check the validity of the existing one.
> 
> 
> The following was necessary to make all tests pass on my system:
> 
> * Add
> 
> LoadModule auth_module modules/mod_auth.so
> LoadModule mime_module modules/mod_mime.so
> LoadModule alias_module modules/mod_alias.so
> LoadModule dir_module modules/mod_dir.so
> 
>   to the generated t/conf/httpd.conf
> 
> * Create a symbolic link in t to the httpd's modules directory
> 
> It seems to me that the standard configuration of this system's
> httpd does not include a lot of "standard" modules.

I suppose we could have added:

<IfModule !mod_auth.c>
    LoadModule auth_module $ServerRoot/modules/mod_auth.so
</IfModule>

for each module, but how do we know which ones are needed? I'm talking about 
Apache::Test in general, not necessarily mod_perl 2.0.

We certainly can check whether these modules exist, e.g. 
$ServerRoot/modules/mod_auth.so. So one approach would be to go to modules/ 
and try to conditionally (as in the above example) load them all.



__________________________________________________________________
Stas Bekman            JAm_pH ------> Just Another mod_perl Hacker
http://stason.org/     mod_perl Guide ---> http://perl.apache.org
mailto:stas@stason.org http://use.perl.org http://apacheweek.com
http://modperlbook.org http://apache.org   http://ticketmaster.com


Mime
View raw message