Is this the only way available? How can one configure apache
not to do this?
Background to the question: sometimes you need to migrate
whole sets of CGI scripts from a Unix box to a Win32 box,
e.g., to a demo laptop. Now, imagine on that Unix box
perl was in /usr/local/bin/perl - well, you won't have that
one on your Win32 box. What to do now apart from changing
the interpreter location in every script?
The only solution I know of is copying the perl interpreter
and some other files (DLLs) to a new directory /usr/local/bin,
and then setting the PERL5LIB environment variable in the
apache config with a SetEnv directive for the CGI directory,
because otherwise the interpreter will not find its libraries,
as the ActivePerl binary of perl has @INC compiled in as ".".
Someone else suggested to modify the registry entry for
the binary to avoid the SetEnv part, but the
principal problem stays
the same.
BTW, in IIS, you can configure which interpreter is used
based on the extension of the script - the usual Win32 way
of deciding this. Is there anything like this in apache?
Christian Lemburg
Brainbench MVP for Perl
http://www.brainbench.comh
|