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

如何在RHEL 7上实现PHP 7.1与PostgreSQL通信(Laravel场景)

解决RHEL7上PHP7.1(rh-php71)适配PostgreSQL扩展的问题

我来帮你搞定这个坑——你之前的操作出错是因为PHP扩展和主版本必须严格匹配,把PHP5.4的pgsql扩展硬塞给PHP7.1,肯定会因为版本不兼容炸锅,这完全是正常的。下面是正确的解决步骤:

  • 先清理掉之前装的旧版本扩展,避免残留干扰:

    yum remove php-pgsql
    
  • 安装对应rh-php71的PostgreSQL扩展包,RHEL7的软件集(SCL)里专门为PHP7.1提供了匹配的扩展,包名带rh-php71-前缀:

    yum install rh-php71-php-pgsql
    
  • 安装完成后,重启你的PHP服务(根据你用的Web服务器选择命令):

    • 如果用PHP-FPM:
      systemctl restart rh-php71-php-fpm
      
    • 如果用Apache(已经启用rh-php71的模块):
      systemctl restart httpd
      
  • 最后验证扩展是否成功加载:

    scl enable rh-php71 'php -m | grep pgsql'
    

    正常情况下会输出pgsql和pdo_pgsql两个模块,说明扩展已经生效了。

为什么之前的方法行不通?

不同PHP版本的内部API是不一样的,PHP5.4编译出来的.so扩展文件,根本无法被PHP7.1的解释器识别,强行移动配置文件只会导致PHP进程抛出诸如undefined symbol的错误,甚至直接崩溃。所以一定要安装对应版本的扩展包,不要跨版本混用。

另外提醒一句:用SCL提供的PHP7.1时,所有相关的扩展都要安装带rh-php71-前缀的包,别再碰系统默认的PHP5.4包了,不然还会出各种版本不兼容的问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.22 07:50:01