Geoffrey Young wrote:
>
> without having an environment to test on or the Eagle book to reference...
>
> I seem to recall something in the Eagle book about arguments to Allow and
> Deny - that "from 10.3.4.1" is really a single argument and not two (in the
> TAKE2 sense), so maybe your approach is wrong and you need to make each of
> those entries in your array a single string.
Thanks, but that's not it.
Allow => ['from 1.2.3.0/24', 'from 192.168.1.0/24'],
is treated as the directive 'Allow from 1.2.3.0/24 from 192.168.1.0/24'
which of course doesn't work.
Allow => [['from 1.2.3.0/24'], ['from 192.168.1.0/24']],
gives me the following error:
[Mon Jul 30 09:55:21 2001] [error] <Perl>: allow requires at least two
arguments, 'from' followed by hostnames or IP-address wildcards
The Eagle says that directives that occur multiple times should be an
array of arrays. And it works when I'm not using a single arrayref for
the configuration.
Steve
> -----Original Message-----
> From: Steve Piner
> To: [EMAIL PROTECTED]
> Sent: 7/27/01 12:26 AM
> Subject: Problem with arrayrefs in PSections
>
> I've come across an oddity in configuring Apache through Perl sections.
>
> If I have a local as follows,
>
> my %access = (
> Order => 'deny,allow',
> Deny => 'from all',
> Allow => [['from', '1.2.3.0/24'],
> ['from', '192.168.1.0/24']],
> );
>
> then set up locations (or directorys) as follows
>
> %Location = (
> '/server-status' => {
> SetHandler => 'server-status',
> %access,
> },
> '/server-info' => {
> SetHandler => 'server-info',
> %access,
> },
> );
>
> Then only one of the locations will let me access it.
>
> http://servername/server-status will let me in,
> http://servername/server-info won't.
>
> The problem seems to be with the shared reference: changing the 'Allow'
> line above to
> Allow => 'from all' works - though without the desired restriction of
> course, as does
> changing the code above to the following.
>
> %Location = (
> '/server-status' => {
> SetHandler => 'server-status',
> %access,
> Allow => [['from', '1.2.3.0/24'],
> ['from', '192.168.1.0/24']],
> },
> '/server-info' => {
> SetHandler => 'server-info',
> %access,
> Allow => [['from', '1.2.3.0/24'],
> ['from', '192.168.1.0/24']],
> },
> );
>
> Is this a bug, a stupid-user problem, or something else?
>
> I'm using Apache/1.3.20, mod_perl/1.25 and 1.26, and Perl v5.6.1
>
> Steve
>
> --
> Steve Piner
> Web Applications Developer
> Marketview Limited
> http://www.marketview.co.nz
--
Steve Piner
Web Applications Developer
Marketview Limited
http://www.marketview.co.nz