我有以下错误时,我试图实现谷歌和Facebook的身份验证在windows 7使用wamp服务器。
致命错误:在第273行调用未定义的函数curl_init(),该函数位于E:\wamp\www\mysite\protected\extensions\eauth\EAuthServiceBase.php中
我正在使用,
- wampserver 2.2版本
- php版本5.3.13
我也启用了php_curl模块。我在php.ini中检查了确认,它是取消注解的,如下所示。
;extension=php_bz2.dll
extension=php_curl.dll
;extension=php_dba.dll
这段代码可以在ubuntu和xampp中运行,但不能在windows的wamp中运行。我已经做了我能找到的所有事情。我也尝试过根据这个线程的评论替换php_curl. dll,Call to undefined function curl_init() - with WAMP
我的phpinfo()如下所示。
我已经在分区E:\中安装了wamp,但是“配置文件(php.ini)路径”似乎不同,它是C:\Windows。
请帮助我解决此问题。
9条答案
按热度按时间e1xvtsh31#
访问这个,并有一个文件下固定 curl 扩展名:http://www.anindya.com/php-5-4-3-and-php-5-3-13-x64-64-bit-for-windows/下载并替换相关文件后重新启动服务器。在浏览器中导航到localhost,并确保在“加载的扩展名:
9nvpjoqh2#
对于在64位Windows 7上运行PHP 5.4.3的WAMP,请确保使用的是php_curl-5.4.3-VC9-x64.zip,而不是php_curl-5.4.3-nts-VC9-x64.zip。
h7appiyu3#
在Windows 7与PHP 5.5.31检查后,php_curl. dll扩展已启用(仍然不工作),为我工作复制libeay32.dll和libssh2.dll从php目录到Apache bin.
o2g1uqev4#
只是猜测-php.ini中的这一节没有引用正确的位置
http://www.php.net/manual/en/ini.core.php#ini.extension-dir
编辑
另外,在phpinfo中查找这个块,如果没有,curl就没有加载(很明显)。你不是在寻找匹配的版本号--只是寻找这个块的存在。
编辑
看这个问题也
PHP and CURL under Windows 7 64 bits and Apache
d8tt03nd5#
使用WAMP时..
php.ini
php.ini
中启用扩展extension=php_curl.dll
,方法是删除;
字符extension_dir
必须与以下示例类似:extension_dir = "D:\AMP\PHP\ext\"
,因此不是相对路径ext
目录中包含php_curl.dll
guicsvcw6#
(Windows 10用户)
由于这是谷歌的第一个结果,我有完全相同的问题,没有你的解决方案为我工作,我终于找到了正确的解决方案在其他线程的stackoverflow,我会在这里发布链接:EasyPHP Devserver 16.1 Curl Win 10
解决方案是将当前的PHP目录(取决于您使用的版本)添加到Windows中的全局“path”变量中(如链接中所述,但您当然不需要添加所有的PHP目录)
z4iuyo4d7#
不确定该把我的经验放在哪里,希望它会对某人有用。
在我的例子中(win7 x64 + apache 2.4 + php 7.2),curl扩展在
php.ini
中被启用,但是没有加载。vxbzzdmp8#
对于在Windows上运行PHP 7+的用户,默认情况下php目录中没有
php.ini
文件。您需要:
1.在PHP目录中创建一个
php.ini
文件(它应该在C:\php\
下,或者php目录所在的位置)1.将
php.ini-development
或php.ini-production
的内容复制到已创建的php.ini
文件中。1.最后去掉分号(;)在
extension=curl
之前e1xvtsh39#
更改php.ini文件中的扩展名,通过删除取消注解;如下所示
然后重新启动所有服务,它将工作。