如何在启用了SSL的Windows上安装PHP的PostgreSQL客户端库

时间:2014-05-18 20:58:43

标签: php windows postgresql ssl heroku

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

  

pg_pconnect():无法连接到PostgreSQL服务器:sslmode值   在

中未编译SSL支持时,“require”无效

我尝试从我的Postgres安装中复制libpg.dll,但没有用。

我运行 phpinfo ()并在pgsql下说: SSL已禁用

我安装了BitNami's WAPP Stack。使用它 phpinfo ()列在pgsql下:启用SSL 。但我仍然得到同样的错误。

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


类似的问题,但没有满足答案:

Heroku Postgres Connection from localhost PHP application

Unable to connect to PostgreSQL server


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

1 个答案:

答案 0 :(得分:4)

我有一个非常类似的问题。我从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副本。
  4. 这就是诀窍。看起来PHP附带的libpq.dll没有编译进入SSL支持,而pgAdmin III则支持SSL。