You are viewing a plain text version of this content. The canonical link for it is here.
Posted to modperl@perl.apache.org by Steve Duran <st...@nmmcc.com> on 2005/11/18 22:33:22 UTC
[mp2] Env Variable / Oracle config problem
Hello,
I'm trying to get a basic web app running under mod_perl2, using an Oracle database connection. After I define the environment variables listed below, the test script works fine from the command line, but fails with the following error when I try to run it via the web server. If I do not define the environment variables, I get the same error on the command line as I do from the web server.
I have tried different ways of defining the enviroment variables for the script, but nothing seems to work.
This is the error that I get from the web server (Apache 2)
[Fri Nov 18 14:15:54 2005] [error] Can't load '/usr/lib/perl5/site_perl/5.8.5/i386-linux-thread-multi/auto/DBD/Oracle/Oracle.so' for module DBD::Oracle: libclntsh.so.9.0:
cannot open shared object file: No such file or directory at /usr/lib/perl5/5.8.5/i386-linux-thread-multi/DynaLoader.pm line 230.
at /web/cgi-bin/test/test.pl line 6
Compilation failed in require at /web/cgi-bin/test/test.pl line 6..
BEGIN failed--compilation aborted at /web/cgi-bin/test/test.pl line 6.
This is and excerpt from httpd.conf:
SetEnv ORACLE_HOME /u01/app/oracle/product/9.2.0.4
SetEnv ORACLE_USERID foo/foo@bar
SetEnv ASSUME_KERNEL 2.4.19
SetEnv LD_LIBRARY_PATH /u01/app/oracle/product/9.2.0.4/lib
LoadModule perl_module modules/mod_perl.so
PerlModule Apache2::compat
PerlModule Apache::DBI
ScriptAlias /test/ "/web/cgi-bin/test/"
<Directory "/web/cgi-bin/test">
Options +ExecCGI
SetHandler perl-script
PerlResponseHandler ModPerl::Registry
PerlOptions +ParseHeaders
</Directory>
Beginning of test.pl:
#!/usr/bin/perl -w
use strict;
use Apache::DBI;
use DBI;
use DBD::Oracle;
use CGI qw(:standard);
use Text::TagTemplate;
use Storable;
BEGIN
{
$ENV{'ORACLE_HOME'} = '/u01/app/oracle/product/9.2.0.4';
$ENV{'ORACLE_USERID'} = 'foo/foo@bar';
$ENV{'ASSUME_KERNEL'} = '2.4.19';
$ENV{'LD_LIBRARY_PATH'} = '/u01/app/oracle/product/9.2.0.4/lib';
}
Any suggestions?
Thanks,
Steve
Re: [mp2] Env Variable / Oracle config problem
Posted by "Philippe M. Chiasson" <go...@ectoplasm.org>.
Steve Duran wrote:
>
>
> Hello,
>
>
>
> I'm trying to get a basic web app running under mod_perl2, using an
> Oracle database connection. After I define the environment variables
> listed below, the test script works fine from the command line, but
> fails with the following error when I try to run it via the web server.
> If I do not define the environment variables, I get the same error on
> the command line as I do from the web server.
>
>
>
> I have tried different ways of defining the enviroment variables for
> the script, but nothing seems to work.
>
>
>
> This is the error that I get from the web server (Apache 2)
>
>
>
> [Fri Nov 18 14:15:54 2005] [error] Can't load
> '/usr/lib/perl5/site_perl/5.8.5/i386-linux-thread-multi/auto/DBD/Oracle/Oracle.so'
> for module DBD::Oracle: libclntsh.so.9.0:
> cannot open shared object file: No such file or directory at
> /usr/lib/perl5/5.8.5/i386-linux-thread-multi/DynaLoader.pm line 230.
> at /web/cgi-bin/test/test.pl line 6
> Compilation failed in require at /web/cgi-bin/test/test.pl line 6.
> BEGIN failed--compilation aborted at /web/cgi-bin/test/test.pl line 6.
>
>
>
>
>
> This is and excerpt from httpd.conf:
>
>
> SetEnv ORACLE_HOME /u01/app/oracle/product/9.2.0.4
> SetEnv ORACLE_USERID foo/foo@bar <ma...@bar>
> SetEnv ASSUME_KERNEL 2.4.19
> SetEnv LD_LIBRARY_PATH /u01/app/oracle/product/9.2.0.4/lib
Try this:
PerlSetEnv ORACLE_HOME /u01/app/oracle/product/9.2.0.4
PerlSetEnv ORACLE_USERID foo/foo@bar <ma...@bar>
PerlSetEnv ASSUME_KERNEL 2.4.19
PerlSetEnv LD_LIBRARY_PATH /u01/app/oracle/product/9.2.0.4/lib
More details here:
http://perl.apache.org/docs/1.0/guide/config.html#PerlSetEnv_and_PerlPassEnv
--------------------------------------------------------------------------------
Philippe M. Chiasson m/gozer\@(apache|cpan|ectoplasm)\.org/ GPG KeyID : 88C3A5A5
http://gozer.ectoplasm.org/ F9BF E0C2 480E 7680 1AE5 3631 CB32 A107 88C3A5A5