当前位置: 首页 > 知识库问答 >
问题:

PHP、PEAR和ococ8配置

闾丘德宇
2023-03-14

我会快点的。

我安装了Oracle11g(带有适当的数据库、用户等),Apache2.4。6和PHP5.5。在Fedora 19系统上有4个。

我想将PHP连接到Oracle。我真正想做的是下载MDB2_Driver_oci8,我认为这很容易,但在我做这件事之前,PHP需要启用该插件,所以我做了以下工作:

  • 试图通过以下方式安装oci8:pecl安装oci8
  • 最初几次,当这不起作用时,我发现出于某种原因,我需要“开发工具”——通过yum-groupinstall“Development tools”
  • 后来我发现PHP实际上不做oci8——它是PHP开发的。因此,我也必须通过yum-install-php-devel安装它
  • 然后,我终于安装了oci8。它要求提供Oracle目录,就是这样。但它说:
    配置选项“php_ini”未设置为php。ini位置
    您应该添加'extensions=oci8'。因此,对php来说,这是一个很好的选择。ini

首先,我找到了oci8。因此-在/usr/lib64/php/modules/
中找到了它。其次,我将它告诉我的内容添加到php中。ini文件
第三,我检查了通常的php_info()测试页面-没有提到OCI8。哦
第四,运行php-i和php-m将oci8列为模块之一。奇怪<在绝望中,我继续下载了MDB2_驱动程序oci8。也许这会解决问题。不。

当我加载我的PHP网页时,它返回了以下内容:
错误消息:扩展ococ8未编译成PHP
以及: MDB2错误:未找到

奇怪。然后我决定检查错误日志:
PHP启动-无法加载动态库'/usr/lib64/php/模块/oci8.so'-libclntsh.so.11.1:无法打开共享对象文件:在未知中没有这样的文件或目录行0

现在我被卡住了。我试着进入php。ini,并发扩展名\u dir已被注释掉。我把它放回去了,它似乎只是把东西弄坏了。

值得注意的事项:

  • 我按照这个(链接)指南介绍了如何配置PHP和安装oci8
  • /配置--with-oci8不起作用。Fedora说没有这样的目录
  • 由于网页文件和实际服务器都位于同一台PC上,因此我没有安装Oracle客户端文件
  • 默认情况下,php中的扩展名_dir被注释掉。伊尼

这只是我在复制一个已经存在并正在运行但即将消亡的设置时遇到的一系列问题中的一个问题。似乎每当我想解决一个问题,我必须先做X。通过做X,我发现了另一个问题,我必须通过做Y来解决,它有自己的问题,等等。

任何帮助都将不胜感激。谢谢

共有2个答案

芮安顺
2023-03-14

在互联网上读了很多之后,我发现了这个页面,这表明我应该禁用SELinux,然后重新启动。

这就成功了。

闽阳州
2023-03-14

我知道这个问题有点老了,但我在这里写这篇文章,以防其他人来寻找解决方案。

PHP扩展目录

要获取PHP扩展目录,请运行以下命令

php-config --extension-dir

ORACLE配置

为oracle运行config命令时,需要将其与oracle主目录一起提供(假设您已安装oracle XE):

./configure -with-oci8=shared,$ORACLE_HOME/xe

SELinux策略

您需要调整SELinux策略,以支持您试图实现的目标。不建议完全禁用它。

在您的Fedora系统上,尝试运行:

which audit2allow

如果您收到一个错误,表明无法找到audit2allow,则需要安装此软件包:

yum install policycoreutils-python

拥有此软件包后,您可以将审核日志文件导入audit2allow,让它创建策略文件:

grep httpd /var/log/audit/audit.log | audit2allow -m httpd > http.te

这将创建人类可读的文件http.te,以便查看它将对您的SELinux配置添加哪些策略。如果您同意这些修改,那么运行这些命令(请注意以下命令中的大写字母M与前面的小写字母m)

grep httpd /var/log/audit/audit.log | audit2allow -M httpd
semodule -i httpd.pp

这可能需要几秒钟的时间运行-您可以通过运行以下命令来验证策略是否已安装:

semodule -l | grep httpd

您需要重新启动httpd,以便它可以尝试加载oci8。所以插件

service httpd restart

 类似资料:
  • 问题内容: 我正在尝试在centos上安装pear。 我已经使用“ * yum install php-pear **”安装了pear,它似乎安装成功。没有错误。我重新启动服务器。 但是,当我签出phpinfo()时。我看到我的php仍然使用“ --without-pear ” 构建。 百胜不是应该用梨重建我的php吗?可能出什么问题了? 谢谢! 问题答案: 尝试类似 和 -现在,如果您在第一种情

  • 本文向大家介绍Windows下的PHP安装pear教程,包括了Windows下的PHP安装pear教程的使用技巧和注意事项,需要的朋友参考一下 因为需要安装 PHPUnit,要先装 pear,网上的教程大多数是以双击 go-pear.bat 开始,但是我安装的php文件夹里压根没有这个文件。 经过几次搜索之后终于找到了办法,解决步骤如下: 1、下载下面连接的文件至 go-pear.phar htt

  • 如果我转到localhost链接,它会显示此错误: 警告:未知:未能打开流:在第0行的未知中没有这样的文件或目录 致命错误:未知:无法打开所需的“C:/Users/GuylianWasHier/OneDrive-ROC Ter AA/1”。学校/1。网络开发/2。WebDev项目/索引。第0行未知中的php'(include_path=';C:/laragon/etc/php/pear') 我该如

  • PEAR 是另一个常用的依赖包管理器, 它跟 Composer 很类似,但是也有一些显著的区别。 PEAR 需要扩展包有专属的结构, 开发者在开发扩展包的时候要提前考虑为 PEAR 定制, 否则后面将无法使用 PEAR. PEAR 安装扩展包的时候, 是全局安装的, 意味着一旦安装了某个扩展包, 同一台服务器上的所有项目都能用上, 当然, 好处是当多个项目共同使用同一个扩展包的同一个版本, 坏处是

  • Pear Admin Ant 是一个基于 Vue 3 与 Ant Design 2 的中台框架。 预 览      官 网       社区 更新内容 ⭐ 1.登录密码 Input --> type == password 2.通知 / 公告 / 私信 / 任务 3.删除国际化在线切换 4.input 样式修复 5.升级 Ant 依赖至 Rc 7 6.登录加载动画 7.夜间模式 tab 适应问题,

  • Pear Admin Boot 是 Pear Admin 开源社区推出的 Spring Boot 生态下的快速开发平台,采用 Pear Admin Layui 作为用户交互UI ,并集成权限控制,流程设计,代码生成,定时任务模块 帮助用户快速构建业务体系。 预览地址 官方网址 源码仓库 权限管理 RBAC 设计,User - Role - Power 的设计关系,通过界面分配,完成权限的高度定制