在Windows中安装PHP - “php.exe”和“PHP SAPI”都应该支持pdo_mysql

时间:2010-03-04 08:42:57

标签: php wamp

我们将Windows用于我们的开发系统。我手动安装PHP,Apache,MySQL。全部来自zip包。现在:

如果我使用php 线程安全二进制文件: 从命令行执行php.exe时无法加载pdo_mysql。我收到以下警告:

PHP Warning:  PHP Startup: pdo_mysql: Unable to initialize module
Module compiled with module API=20060613, debug=0, thread-safety=0
PHP    compiled with module API=20060613, debug=0, thread-safety=1
These options need to match
 in Unknown on line 0

我检查了我们的RHEL生产服务器,有php已经安全被禁用。所以我下载的不是线程安全二进制文件from here

现在,我遇到了另一个问题:Apache无法启动。 error.log说:

[Thu Mar 04 13:54:08 2010] [crit] Apache is running a threaded MPM, but your PHP Module is not compiled to be threadsafe.  You need to recompile PHP.
Pre-configuration failed
[Thu Mar 04 13:54:08 2010] [warn] (OS 995)The I/O operation has been aborted because of either a thread exit or an application request.  : winnt_accept: Asynchronous AcceptEx failed.

如何在Windows中安装支持pdo_mysql的php?那么命令行php.exe是否有效?

注意:在线程安全的二进制文件中,尽管php.exe没有加载pdo_mysql,但PHP API能够加载它。因为在phpinfo中它出现了。

1 个答案:

答案 0 :(得分:0)

抱歉!这是愚蠢的。 我发现这是问题所在: Apache正在使用线程安全的SAPI。命令行使用Zend Core提供的php.exe!

我重新配置了“PATH”环境变量:所以现在它指向线程安全包中的php.exe。问题解决了。