【问题标题】:How to installPostgreSQL client library for PHP on Windows with SSL enabled如何在启用 SSL 的 Windows 上为 PHP 安装 PostgreSQL 客户端库
【发布时间】:2014-07-06 18:23:01
【问题描述】:

我无法从我的 本地 PHP 开发服务器连接到我在 Heroku 上的 PostgreSQL 数据库。这是因为 Heroku 要求我使用 SSL 进行连接。但是标准的 Windows PHP 5.5.12 PostgreSQL 客户端库似乎不支持 SSL。我收到以下错误:

pg_pconnect():无法连接到 PostgreSQL 服务器:sslmode 值 未编译 SSL 支持时“require”无效

我尝试从我的 Postgres 安装中复制 libpg.dll,但无济于事。

我运行了 phpinfo(),它在 pgsql 下显示:SSL disabled

我安装了BitNami's WAPP Stackphpinfo() 在 pgsql 下列出:SSL enabled。但我仍然遇到同样的错误。

谁能告诉我如何在启用 SSL 的 Windows 上为 PHP 获取 PostgreSQL 客户端库?


没有满意答案的类似问题:

Heroku Postgres Connection from localhost PHP application

Unable to connect to PostgreSQL server


非常感谢任何帮助, 丹尼尔

【问题讨论】:

    标签: php windows postgresql ssl heroku


    【解决方案1】:

    我有一个非常相似的问题。我从PHP Windows download site 安装了 PHP 5.4.28,尝试在 PHP 脚本中连接到远程 Postgres 服务器,得到了完全相同的错误。

    我能够通过以下方式修复它:

    1. 下载并安装pgAdmin III
    2. 转到 C:\Program Files\pgAdmin III\1.16(或安装 pgAdmin 的位置)
    3. 将libpq.dll和libintl.dll复制到PHP安装目录下;这将替换 PHP 附带的现有 libpq.dll 副本。

    成功了。看起来 PHP 附带的 libpq.dll 没有编译 SSL 支持,而 pgAdmin III 的 libpq.dll 有。

    【讨论】:

    • 非常感谢。我尝试使用 libpq.dll,但缺少 libintl.dll。您是如何发现它也需要它的?
    • 我遇到了同样的问题,但是在 pgAdmin III/1.20 中不存在 libintl.dll 但存在 intl.dll,所以我将它复制到 XAMPP 下的 PHP 文件夹中,瞧,有用!!!谢谢!!
    猜你喜欢
    • 2016-02-24
    • 2014-09-14
    • 1970-01-01
    • 2017-05-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-12-12
    相关资源
    最近更新 更多