对未定义函数 curl_init() 的致命错误调用

时间:2021-07-12 17:46:00

标签: php apache curl php-curl

我知道还有其他类似标题的问题,例如:

curl_init() function not working

但是我仍然无法让 curl 在我的本地主机和我的服务器上工作。

对于这种情况,我将重点介绍服务器,即 Windows Server 2019。

Apache 的版本是 2.4.46。

PHP 版本为 7.4.12。

在 php.ini 文件中,我有以下未注释:

extension=curl

在扩展文件夹中,可以看到如下文件:

php_curl.dll

在phpinfo.php页面,没有看到curl已经开启,奇怪。我看到 curl 的唯一地方是在 module.authors 部分,它看起来像这样:

cURL           |          Sterling Hughes

我已经重新启动了服务,但仍然出现以下错误:

Fatal error: Uncaught Error: Call to undefined function curl_init() 

我已经被困了几天了。

我做错了什么,我该如何解决?

编辑

我刚刚添加了这段代码:

echo "<pre>", print_r(get_loaded_extensions()), "</pre>";

我得到以下信息:

Array
(
[0] => Core
[1] => bcmath
[2] => calendar
[3] => ctype
[4] => date
[5] => filter
[6] => hash
[7] => iconv
[8] => json
[9] => SPL
[10] => pcre
[11] => readline
[12] => Reflection
[13] => session
[14] => standard
[15] => mysqlnd
[16] => tokenizer
[17] => zip
[18] => zlib
[19] => libxml
[20] => dom
[21] => PDO
[22] => openssl
[23] => SimpleXML
[24] => xml
[25] => xmlreader
[26] => xmlwriter
[27] => apache2handler
[28] => mysqli
[29] => Phar
[30] => pdo_mysql
)
1

没有一个是用于 curl 的。

请参阅以下参考以了解我当前的反应:

https://www.youtube.com/watch?v=wNFMPhKIZXg

1 个答案:

答案 0 :(得分:0)

通过在我的 PHP 根文件夹中找到一个名为 libssh2.dll 的文件并将其复制/粘贴到 Apache bin 文件夹中,我终于解决了这个问题。一旦我这样做了,curl 现在就启用了,我不再收到有问题的错误。我遇到了其他错误,但这是另一个问题。