You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

RHEL 7.9系统PHP启动无法加载oci8.so、odbc.so动态库问题求助

排查解决步骤

  • 先修正配置路径拼写错误
    你报错中出现的/ect/php.d/是拼写错误,正确的系统配置目录应为/etc/php.d/,先检查你是否在php.ini或者扩展配置文件中手动写死了错误的扩展路径,把所有/ect/开头的加载配置删除或修正。
  • 确认扩展文件实际安装位置
    执行以下命令验证两个扩展的.so文件是否存在:
# 查oci8.so位置
rpm -ql php-pecl-oci8 | grep \.so
# 查odbc.so位置
rpm -ql php-odbc | grep \.so

正常返回结果应为:
/usr/lib64/php/modules/oci8.so
/usr/lib64/php/modules/odbc.so

  • 验证PHP扩展目录配置
    执行命令查看PHP默认扩展目录是否匹配:
    php -i | grep extension_dir
    RHEL7官方源的PHP5.4默认扩展目录就是/usr/lib64/php/modules,如果不匹配需要修正php.ini中的extension_dir配置项为正确路径。
  • 清理错误的扩展加载配置
    RHEL的PHP包会自动在/etc/php.d/目录下生成对应的扩展配置文件:40-oci8.ini和30-odbc.ini,里面默认只写extension=xxx.so即可,不需要写绝对路径。如果你之前手动在php.ini末尾添加过扩展加载行,直接删除这部分手动添加的内容。
  • 验证修复结果
    修改完成后重启你的PHP运行服务(如果是Apache模式执行systemctl restart httpd,如果是php-fpm模式执行systemctl restart php-fpm),之后执行php -m命令,确认返回的模块列表中存在oci8和odbc,且无启动报错即可。

如果后续出现oci8依赖Oracle库的报错,补充安装Oracle Instant Client基础包和devel包即可,你当前的报错属于路径配置错误,完成上述步骤即可解决。


内容的提问来源于stack exchange,提问作者Maximious

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.26 10:45:10