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
|