当我尝试使用wamp服务器在Windows 7中实施google和facebook身份验证时出现以下错误。
致命错误:调用未定义的函数curl_init() E:\ WAMP \ WWW \ mysite的\保护\分机\ eauth \ EAuthServiceBase.php 在第273行
我正在使用,
我也启用了php_curl模块。我在php.ini中检查了确认,并在下面取消注释。
;extension=php_bz2.dll
extension=php_curl.dll
;extension=php_dba.dll
代码在ubuntu中使用xampp,但不在windows中使用wamp。我做了我能找到的一切。我已经尝试根据此帖子Call to undefined function curl_init() - with WAMP
上的评论替换php_curl.dll我的phpinfo()如下所示。
我在分区E:\中安装了wamp,但“配置文件(php.ini)路径”似乎不同,它是C:\ Windows。
请帮我解决问题。
答案 0 :(得分:63)
访问此文件并在Fixed curl extensions下有一个文件: http://www.anindya.com/php-5-4-3-and-php-5-3-13-x64-64-bit-for-windows/ 下载并替换相关文件后重启服务器。 在浏览器中导航到localhost并确保在Loaded Extensions下显示curl扩展名:
答案 1 :(得分:11)
对于在Windows 7 64位上运行PHP 5.4.3的WAMP,请确保使用php_curl-5.4.3-VC9-x64.zip NOT php_curl-5.4.3-nts-VC9-x64.zip。
答案 2 :(得分:2)
在Windows 7中使用PHP 5.5.31检查php_curl.dll扩展名是否已启用(但仍无法正常工作)后,我可以复制 libeay32.dll 和 libssh2.dll < / strong>从php目录到Apache bin。
答案 3 :(得分:1)
只是一个猜测 - php.ini中的这一部分没有引用正确的位置
; Directory in which the loadable extensions (modules) reside.
extension_dir = *some value*
http://www.php.net/manual/en/ini.core.php#ini.extension-dir
修改
另外,在你的phpinfo中寻找这个块,如果它不在那里,curl没有加载(显然)。你不是在寻找匹配的版本号 - 只是为了块的存在。
修改
也看看这个问题
答案 4 :(得分:0)
下载此文件并替换您的php_curl文件。
http://pan.baidu.com/share/link?shareid=256509&uk=3675208906
答案 5 :(得分:0)
php.ini
php.ini
启用扩展程序extension=php_curl.dll
,删除;
字符extension_dir
必须如下所示:extension_dir = "D:\AMP\PHP\ext\"
,所以不是相对路径php_curl.dll
目录中有ext
答案 6 :(得分:0)
(Windows 10用户)
由于这是谷歌的第一个结果,我有完全相同的问题,你的解决方案都没有为我工作,我终于在stackoverflow的另一个线程中找到了正确的解决方案,我将在这里发布链接: EasyPHP Devserver 16.1 Curl Win 10
解决方案是将您当前的PHP目录(取决于您使用的版本)添加到Windows中的全局“路径”变量中(如链接中所述,但您不需要添加所有php directorias当然)
答案 7 :(得分:0)
不确定将我的经验放在哪里,希望它对某人有用。
在我的情况下(win7 x64 + Apache 2.4 + php 7.2),在php.ini
中启用了curl扩展,但未加载。通过使用OpenSSL的latest builds替换 Apache libssl-1_1-x64.dll
文件夹中的库libcrypto-1_1-x64.dll
和bin
来解决
答案 8 :(得分:-1)
通过删除更改php.ini文件中的扩展名取消注释;如下所示
;extension=php_bz2.dll
extension=php_curl.dll
;extension=php_dba.dll
然后重新启动所有服务,它将起作用。