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?
>