OCI8 扩展无法在 PHP 5.4、CentOS 7 中加载

OCI8 扩展无法在 PHP 5.4、CentOS 7 中加载

我有一个 CentOS 环境作为 VM 客户机运行。它在 Apache 2.0 上运行 Oracle 12.1 数据库以及 PHP 5.4.16。

我已完成安装步骤,以确保安装了正确的 OCI 驱动程序。我正在运行版本 2.0.10,如下所述:这里 >>,并指出了正确的方向$ORACLE_HOME

正如您从phpinfo()屏幕上看到的,oci 扩展似乎正在从扩展目录加载:

phpinfo() 提取

但是,页面的其余部分没有相应的 OCI8 条目phpinfo()(如下所述这里>>)。

内容/etc/php.d/oci8.ini如下:

; Created by me: 2016-02-08
extension=oci8.so

我的扩展目录是:

PHP 扩展目录

并且,关于权限和 SELinux 上下文,此目录中的文件似乎是正确的(如您在此处所见):

在此处输入图片描述

当我index.php在浏览器中加载文件时,它似乎主要加载成功,但对 OCI 代码(变量、常量、函数)的任何引用都出错(当然意味着扩展尚未在 PHP 内部注册):

在浏览器中加载index.php

有人知道我应该怎么做才能在 PHP 中正确注册 OCI8 扩展吗?

=== 编辑/解决方案?? ===

我关闭了 SELinux(请参阅此操作指南),突然间 OCI 似乎起作用了。无论如何,这都不是一个理想的解决方案,因为它使整个操作系统更容易受到攻击。但它目前可以满足我的要求。

另一方面,如果有人知道如何启用 SELinux,并使其与 OCI8 一起工作,我们将非常感谢您的评论!

相关内容