Re: Problem with arrayrefs in PSections
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] : 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
RE: Problem with arrayrefs in PSections
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. just off the top of my head... HTH --Geoff -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
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