Просто предположение, но распространенная причина такого рода вещей заключается в том, что среда ORACLE_HOME не установлена для вашей программы CGI.Apache обычно запускается во время загрузки, и поэтому пропускает все файлы типа / etc / profile.
Вам необходимо убедиться, что установлен ORACLE_HOME
, и в зависимости от настроек вашей системы вам также может понадобиться LD_LIBRARY_PATH
обновлено, чтобы включить $ORACLE_HOME/lib
.Вам либо нужна ваша программа для установки окружения, либо в вашей конфигурации apache есть директива SetEnv
.Чтобы понять, в этом ли проблема, просто напишите тестовый CGI, который выводит все переменные среды.
Теперь, если CGI работает под mod_perl
, это немного сложнее, потому что mod_perl имеет тенденцию быть довольно анальным по поводубезопасность окружающей среды.Думаю, мы закончили с использованием директивы Perl * Something * Require, чтобы установить ее в perl.Прошу прощения за расплывчатость, было много лет назад ....