2012-11-15 63 views
2

所以我在Windows 7机器上安装了XAMPP和PostgeSQL。XAMPP + PostgeSQL =错误

我配置了Apache的httpd.conf和PHP.ini文件就好了,他们工作。 我取消了php.ini文件中的“extension php_pgsql.dll”这一行,并将\ php,\ php \ ext和PostgeSQL \ bin和\ lib目录添加到了我的PATH变量中。

C:\Program Files\PostgreSQL\9.2\lib;C:\Program Files\PostgreSQL\9.2\bin;C:\xampp\php\ext;C:\Program Files (x86)\PostgreSQL\EnterpriseDB-ApachePHP\php;C:\xampp\php; 

我下载的php_pgsql.dll文件与Windows兼容,并已将其复制到\ PHP \分机

当我试图启动Apache服务器,我得到两个错误:

“程序入口点_regexec @ 20不能位于动态链接库php5ts.dll中。“ 和 “PHP启动:无法加载动态库'C:\ xampp \ php \ ext \ php_pgsql.dll' - 找不到指定的过程。”

因此,这些错误显然不是致命的,这意味着服务器将继续启动并完成启动。 另外,如果我在php.ini中注释掉“extension php_pgsql.dll”这一行,错误就会消失。 下面是PHP相关的错误日志和Apache:

阿帕奇:

[Thu Nov 15 10:48:11.763770 2012] [mpm_winnt:notice] [pid 5420:tid 320] AH00455: Apache/2.4.3 (Win32) OpenSSL/1.0.1c PHP/5.4.7 configured -- resuming normal operations 
[Thu Nov 15 10:48:11.763770 2012] [mpm_winnt:notice] [pid 5420:tid 320] AH00456: Server built: Aug 18 2012 12:41:37 
[Thu Nov 15 10:48:11.763770 2012] [core:notice] [pid 5420:tid 320] AH00094: Command line: 'c:\\xampp\\apache\\bin\\httpd.exe -d C:/xampp/apache' 
[Thu Nov 15 10:48:11.764770 2012] [mpm_winnt:notice] [pid 5420:tid 320] AH00418: Parent: Created child process 5728 
[Thu Nov 15 10:48:13.489869 2012] [ssl:warn] [pid 5728:tid 328] AH01873: Init: Session Cache is not configured [hint: SSLSessionCache] 
[Thu Nov 15 10:48:16.520042 2012] [mpm_winnt:notice] [pid 5728:tid 328] AH00354: Child: Starting 150 worker threads. 

PHP:

[15-Nov-2012 15:48:11 UTC] PHP Warning: PHP Startup: Unable to load dynamic library 'C:\xampp\php\ext\php_pgsql.dll' - The specified procedure could not be found. 

in Unknown on line 0 

[15-Nov-2012 15:48:16 UTC] PHP Warning: PHP Startup: Unable to load dynamic library 'C:\xampp\php\ext\php_pgsql.dll' - The specified procedure could not be found. 

in Unknown on line 0 

我想这个设置让我可以写一个PHP接口PostgeSQL数据库。这仅仅是为了好玩,而不是在专业环境中。

+0

你是否获得了基于windows的php的postgres模块(例如php_pgsql.dll)? –

+0

是的,我下载了它,并将其放到php \ etc目录中 - 修复了之前获得的“不是有效的win32应用程序”错误。 – gal

回答

2

尝试this,我有这个问题Windows 7 (64bit),我说的libpq.dll的完整路径从PostgreSQL服务器安装路径为httpd.conf,并解决了问题。