几番折腾,终于搞定了这个问题,需要注意的事项记录如下,供后来人参考:
首先,我装的WAMP server 是64 bits & Apache 2.4, 2.2E版,这版的php_curl.dll是有问题的。估计编译生成的时候用的是debug版的VC++ runtime库,所以需要用正式release的VC++ redist库重新编译生成。
如果不想自己重编译,可以下载一个别人重新编译好的php_curl.dll,替换 wampbinphpphp5.4.3ext目录下对应文件,重启apache即可。
注意,php_curl.dll必须和PHP的版本对应,版本不对也会无法加载curl,而且event viewer里不会有任何出错提示。我就是吃了这个亏,检查好久才发现。
对应PHP 5.4.3版本的php_curl.dll可以在这里下到,对应5.3.13版本的在这里。
如果还不行,请检查:
1. 是否已修改php.ini文件去掉extension=php_curl.dll一行前面的分号注释? 修改的php.ini文件是否正确?可以在页面加入一行代码 echo 'php.ini: ', get_cfg_var('cfg_file_path'); 来显示当前使用的php.ini文件的位置,或者直接调用phpinfo()函数查看。
2. 是否安装了Microsoft Visual C++ 2008 SP1 Redistributable Package?
3. 我还把apache bin目录下的libeay32.dll和ssleay32.dll拷到了c:windowssystem32并重启了。目前不确定这步是否必须。