2014-05-23 57 views
0

到PostgreSQL我的Apache 2.4和PostgreSQL 9.3和5.5 PHP在Windows Server 2007,我得到以下错误,当我尝试从PHP连接到PostgreSQL:
无法连接与PHP

PHP Fatal error: Call to undefined function pg_connect() 

到目前为止,我已经做了以下内容:
新增C:\ Program Files文件\的PostgreSQL \ 9.3 \ bin添加到我的环境变量
修改php.ini中 - 我注释掉的folling线:

extension=php_pdo_pgsql.dll 
extension=php_pgsql.dll 

我想加入这行来我的httpd.conf文件:

LoadFile "C:/Program Files/PostgreSQL/9.2/bin/libpq.dll" 

但是,当我这样做,我收到以下错误,当我尝试重新启动服务器:

Syntax error on line 177 of C:/Apache24/conf/httpd.conf: 
Cannot load C:/Program Files/PostgreSQL/9.3/bin/libpq.dll into server: 
%1 is not a valid Win32 application. 
+0

您是否在编辑完'php.ini'文件后重新启动了apache?另外,确保你编辑正确的php.ini文件,你可以使用'phpInfo()'来检查什么ini文件被加载。你还应该检查'php_pgsql.dll'是否位于你的扩展文件夹中。 – Cyclonecode

+0

我没有对“httpd.conf”进行“LoadFile”编辑编辑php.ini后重新启动。 – skihansen

+0

从phpInfo():加载的配置文件:C:\ php \ php.ini。 – skihansen

回答

0

我同样的问题“%1不是有效的win32应用程序”。 我的问题是因为我安装了64位postgres,但我的apache和php是32位的。一旦我将postgres更改为32位版本,问题就消失了。