使用REMI存储库在rhel 6上设置oci8

时间:2011-06-09 20:18:17

标签: php apache oci rhel

我以前做过这个,但这是一个漫长的试验和错误过程导致我的测试机器有多个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

如何设置phpinfo()的Enviroment部分中的ORACLE_HOME?

2 个答案:

答案 0 :(得分:1)

经过一些反复试验,我找到了问题的答案。我使用PECL安装了oci8,而不是使用yum和REMI存储库,但我认为这也适用于使用yum安装它。

解决方法:关闭selinux(将其置于许可模式)。这实际上是oracle建议的解决方案。您必须在安装之前将其关闭以使其正确安装,并将其关闭以使其正常工作。

答案 1 :(得分:0)

我不确定为什么Apache环境中出现的内容与httpd.conf文件中的内容不同,除非您更改了某些内容,但您可以使用putenv设置环境变量,例如{{1}在您的代码顶部可能会工作。或者如果需要,可以对值进行硬编码。