如何让 PHP 7.1 与 RHEL 7 上的 PostgreSQL 对话?

How do I get PHP 7.1 to talk to PostgreSQL on RHEL 7?

运行 Laravel 使用 PHP 7.1 在 RedHat Enterprise Linux 7 服务器上安装。我可以在可用的 yum 软件包中看到 php-pgsql.x86_64,但它似乎与 PHP 7.1 不兼容(实际上被列为版本 5.4.16-43.el7_4。 1).

幸运的是,无论如何我都尝试安装它并将 pgsql.inipdo_pgsql.ini 文件从 /etc/php.d 物理移动到相关的 PHP 7.1 文件夹 /etc/opt/rh/rh-php71/php.d/(并且对他们引用的 .so 文件做了同样的事情),但是 returns 一个错误表明无法读取包 (undefined symbol: file_globals_id in Unknown on line 0)。

有没有人设法让 PHP 7.1 在 RHEL 7 上与 PostgreSQL 对话?

最初为我创建服务器的系统管理员让我直截了当。问题是我在错误的存储库中查找特定 PHP 安装所需的软件包。 运行 以下两个命令可以解决问题:

sudo yum install --disablerepo=* --enablerepo=rhui-REGION-rhel-server-rhscl rh-php71-php-odbc

sudo yum install --disablerepo=* --enablerepo=rhui-REGION-rhel-server-rhscl rh-php71-php-pgsql

然后我们将这两个包添加到 Ansible 剧本中,这样子孙后代就不会遭受不必要的痛苦。