Re: PerlSetEnv vars not available in PerlRequire script

Ryan Gies <[email protected]>
Newsgroups gmane.comp.apache.mod-perl
Organization Livesite Networks, LLC
Message-ID <[email protected]>
Notice that PerlSetEnv is allowed in scope DIR:
http://perl.apache.org/docs/2.0/user/config/config.html#mod_perl_Directives_Argument_Types_and_Allowed_Location

Try moving the PerlSetEnv line to inside the LocationMatch directive.  
Although the above documentation indicates PerlSetVar is also of scope 
DIR, I have never had a problem using PerlSetVar in the VirtualHost section.

On 07/22/2010 10:19 AM, Steven van der Vegt wrote:
> Greetings mod_perl list!
>
> I'm upgrading old debian servers to Ubuntu 10.04 and we have to upgrade
> from apache 1.x and mod_perl to apache2 and mod_perl2.x This requires
> rewriting configfiles and I'm running into the following problem:
>
> I've got (sort of) the following apache configuration:
>
> <VirtualHost x.x.x.x:40080>
>
> PerlSetEnv      BASE   /home/steven/foo/base
>
> PerlPostConfigRequire   /home/steven/foo/handler.pl
>
> <LocationMatch "(\.mhtml)$">
>          SetHandler  perl-script
>          PerlHandler Ech::Mason
> </LocationMatch>
>
> </virtualHost>
>
> In the handler I've got this:
>
> use Data::Dumper;
> print Dumper(\%ENV);
>
> With a apache2ctl start the output is:
>
> $VAR1 = {
>            'PATH' =>
> '/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games',
>            'MOD_PERL_API_VERSION' =>  '2',
>            'MOD_PERL' =>  'mod_perl/2.0.4'
>          };
>
> As you can see, my BASE variable is not set in the %ENV. Does anybody
> knows why?
>
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.