try using a startup.pl to pre-load DBD::Oracle (and
everything else while you're at it) and set these environment variables from
within a BEGIN block there.
I've found that this, along with PerlSetEnv, works fine
on Linux.
if that fails, try a BEGIN block in each script as
well...
HTH
--Geoff
-Original Message-From: Hughes, Ralph
[mailto:[EMAIL PROTECTED]]Sent: Thursday, November 16, 2000 8:00
AMTo: ModPerl (E-mail)Subject: Environment configuration
problems
OK,
I've
tried everything I can think of and I'm still having environment configuration
problems.
I
have a series of scripts that access an Oracle database. At a minimum,
two environment variables need to be set up for this; ORACLE_HOME and
LD_LIBRARY_PATH (must include $ORACLE_HOME/lib)
I
set both of these in the httpd.conf file for both the CGI and mod_perl
environment using using SetEnv and PerlSetEnv respectively. Looking at
the environment using /perl-status shows them set
properly.
Now, when I try to kick hit one of these via mod_perl, I
consistently get a 'failed compilation' error when the script attempts to
hook up to the database. THE EXACT SAME SCRIPT will run fine as a plain
old CGI.
If I
shutdown the web server, set ORACLE_HOME and LD_LIBRARY_PATH in my environment
(root's environment actually) and restart Apache, the mod_perl references
start working fine.
Is
there some strangeness in my current version of Apache that only allows
environment variables to be set for mod_perl *if* they are set in the Apache
startup environment first?
I'm currently running Apache 1.3.12 on RedHat
6.0 (2.2.14) with mod_perl 1.24 build on Perl 5.00503. Apache::DBI
0.87 is loaded along with DBI 1.14.
Obviously the workaround for the time being is
to start up the server manually, but this DOES NOT help matters if the server
has to reboot for some reason.
One other thing, I have an almost identical
configuration running on two other servers, and it seems to run fine.
The differences being the Linux version (Mandrake 7.0 vice RedHat) on one and
Apache 1.3.9 on the other. I've 'diffed' everything I can think of and
just can't find the problem
I'm certain that I have just missed *one
little line* in a config script, but try as I might, I can't find
it.
Thanks for the
help!
- Ralph Hughes
[EMAIL PROTECTED]Sr. Systems
Engineer
334-260-3200Anteon
Corp.
DSN 596-5631Montgomery,
AL