Настройте oci8 на rhel 6 с репозиторием REMI - PullRequest
1 голос
/ 10 июня 2011

Я делал это раньше, но это был долгий процесс проб и ошибок, который привел к тому, что на моей тестовой машине было несколько копий php, oci8 и мгновенный клиент, и я до сих пор не уверен, что именно ясделал это, чтобы все заработало.

Пока что я настроил yum для использования репозитория remi, сделал yum install php php-oci8 php-pdo, скачал мгновенный клиент oracle и сделал rpm -Uh oracle-instantclient11.2-basic-11.2.0.2.0.x86_64\ \(1\).rpm

Когда я делаю phpinfo() на странице, она все равно не перечисляет oci8 как один из модулей.

Я думаю, что ошибка связана с переменной среды ORACLE_HOME, но я не уверенна что он должен быть установлен.прямо сейчас у меня есть:

SetEnv LD_LIBRARY_PATH /usr/lib/oracle/11.2/client64/lib
SetEnv ORACLE_HOME /usr/lib/oracle/11.2

в /etc/httpd/conf/httpd.conf

В прошлый раз, когда я получил эту работу, я думаю, что я просто продолжал удалять php и php-oci8и переустановка, пока все не заработает.

Мой рабочий сервер имеет ORACLE_HOME, установленный так: working server

Но новый нерабочий сервер имеет ORACLE_HOME, установленный здесь:

non-working server

как мне установить ORACLE_HOME, который находится в секции Enviroment phpinfo ()?

Ответы [ 2 ]

1 голос
/ 14 июня 2011

После некоторых проб и ошибок я нашел ответ на вопрос. Я установил oci8 с PECL вместо использования yum и репозитория REMI, но я думаю, что это должно работать и для установки с yum.

Решение: выключить selinux (перевести его в разрешающий режим). Это на самом деле предложенное решение оракула. Вы должны выключить его перед установкой, чтобы правильно установить, и отключить, чтобы он работал правильно.

0 голосов
/ 10 июня 2011

Я не уверен, почему то, что отображается в вашей среде Apache, отличается от того, что находится в вашем файле httpd.conf, если вы не изменили что-то, но вы можете установить переменную среды с помощью putenv , что-то вроде putenv("ORACLE_HOME=" . $_SERVER['ORACLE_HOME']); вверху вашего кода может работать.Или, если нужно, жестко закодируйте значение.

...