【发布时间】:2012-09-14 05:29:27
【问题描述】:
是否可以从本地运行的 PHP 应用程序连接到 Heroku postgres(免费)数据库实例。我能够成功连接 pgAdminIII,但通过连接到同一个 Db 的应用程序连接字符串没有运气?
连接
$dbconn = pg_connect("host=xxxxxx.compute-1.amazonaws.com port=5432 dbname=xxxxxxx user=xxxxxx password=xxxxxx sslmode=require options='--client_encoding=UTF8'");
PHP 代码引发的错误:
Warning: pg_connect(): Unable to connect to PostgreSQL server: sslmode value "require" invalid when SSL support is not compiled in in
我在 Heroku 的网站上找到了以下内容,但我希望有人能澄清我是否正在处理 postgres php 问题(在 Apache 上运行 PHP,在 Mac OS X Lion 10.7.4 上运行 PHP 5.3)或者这只是一个Heroku 的以下声明中指出的环境限制:
如何连接到 Heroku Postgres? Heroku Postgres 上的数据库 接受标准的 PostgreSQL 连接。连接可以从 PostgreSQL 客户端应用程序(例如 psql 或 PGAdmin)、应用程序 框架(例如 Ruby-on-Rails 或 Django),或任何其他 libpq 兼容的客户端,从任何地方通过 SSL。
但是,共享数据库只能从应用程序连接 在 Heroku 上运行。
谁能解释一下为什么 pgAdminIII 可以连接但我的应用程序不能连接?
谢谢。
进一步的发现: PHPINFO->
- OpenSSL 支持已启用
- OpenSSL 库版本 OpenSSL 0.9.8r 2 月 8 日 2011
OpenSSL 标头版本 OpenSSL 0.9.8r 2011 年 2 月 8 日
已启用 PostgreSQL 支持
- PostgreSQL(libpq) 版本 8.2.23
- 已禁用 SSL 支持
【问题讨论】:
-
您需要显示更多细节:代码、连接字符串、任何错误消息的确切文本等。
-
我遇到了确切的问题。你解决了吗?
标签: php postgresql heroku