php_curl扩展模块无法加载 Call to undefined function curl_init()
操作系统是windows7 64位,WEB环境是apache2.2、php5.2.17。
在配置一个PHP系统的时候,出现“Call to undefined function curl_init()”的错误。
错误提示说curl_init未能正常加载。使用phpinfo检查,没有curl项目。
按照常规解决方案,首页检查php.ini文件:
1、搜索:“extension_dir =“,修改为“extension_dir = c:\php\ext”(注:“c:\php\”是php安装目录);
2、搜索:“;extension=php_gd2.dll”、“;extension=php_mysql.dll”、“;extension=php_curl.dll”,去掉前面的分号;
3、重启IIS或APACHE。
如果还不行:
1、检查extension_dir设置的目录下检查有无php_curl.dll;
2、把php目录中的libeay32.dll和ssleay32.dll拷到c:\windows\system32里面。
3、重启IIS或APACHE。
判断curl是否正常加载,使用phpinfo,搜索 curl 即可看到:
cURL support enabled
如果没有出现curl字样,就说明curl加载不成功。
如果是一般情况,上面的方案已经完全能够解决问题了。但确实问题没能解决。
是什么原因呢?
因为系统是64位,所以libeay32.dll、ssleay32.dll 这2个文件必须拷贝到:
C://Windows/SysWOW64 目录下,而不是System32目录。
这里把经历发布出来,让有需要的朋友少走弯路。