Я установил пакеты httpd и httpd-devel и установил php и php-devel на сервер. Я скачал и установил базовый клиент и SDK для оракула, а затем приступил к использованию PECL для установки расширения OCI8.
Когда я пытаюсь запустить страницу функции oci_connect в CLI, она работает нормально. Но когда я пытаюсь загрузить ту же страницу php через http, я получаю следующую ошибку:
Неустранимая ошибка: вызов неопределенной функции oci_connect () в /var/www/html/index.php в строке 10
Я сравнил php ini от обоих и заметил, что /etc/php.d/oci8.ini файл загружается в кли и http версии
однако, детали модуля доступны только в версии cli:
oci8
OCI8 Support => enabled
OCI8 DTrace Support => disabled
OCI8 Version => 2.0.8
Revision => $Id: f04114d4d67cffea4cdc2ed3b7f0229c2caa5016 $
Oracle Run-time Client Library Version => 12.1.0.2.0
Oracle Compile-time Instant Client Version => 12.1
Directive => Local Value => Master Value
oci8.connection_class => no value => no value
oci8.default_prefetch => 100 => 100
oci8.events => Off => Off
oci8.max_persistent => -1 => -1
oci8.old_oci_close_semantics => Off => Off
oci8.persistent_timeout => -1 => -1
oci8.ping_interval => 60 => 60
oci8.privileged_connect => Off => Off
oci8.statement_cache_size => 20 => 20
Я не могу на всю жизнь выяснить, почему только один загружает расширение правильно, когда у них обоих одинаковый файл конфигурации.
Спасибо за любую помощь!
Мне удалось это исправить, отключив SELINUX
Других решений пока нет …