【问题标题】:Call to undefined function curl_init().? [duplicate]调用未定义的函数 curl_init().? [复制]
【发布时间】:2011-09-16 23:22:37
【问题描述】:

当我要实施 Authorize.net 支付网关时。但是,我收到了这个错误:

调用未定义的函数 curl_init()

请告诉我其中有什么问题。

【问题讨论】:

  • 您的 PHP 中没有 curl 支持。这个问题一直是asked many times here
  • 对于 PHP7 ...我在系统环境变量中添加了 php dir 路径,从 apache/bin 中删除了 libeay32.dll 和 ssleay32.dll,将这些 dll 保留在 php 目录中及其工作。
  • 有这个问题,但这些答案都没有奏效。原来是在这里:askubuntu.com/questions/1116448/…
  • 如果一切都失败了,它可能是 Apache 的不兼容(旧)版本。从 2.4.18 升级到 2.4.46 解决了我和其他人的问题。

标签: php curl


【解决方案1】:

如果您使用的是 Windows:

转到您的 php.ini 文件并从以下行的开头删除 ; 标记:

;extension=php_curl.dll

保存文件后,您必须重新启动 HTTP 服务器软件(例如 Apache)才能生效。


对于 Ubuntu 13.0 及更高版本,只需使用解绑包即可。在终端中输入以下内容进行安装,不要忘记重启服务器。

sudo apt-get install php-curl

或者如果你使用的是旧的 PHP5

sudo apt-get install php5-curl

sudo apt-get install php5.6-curl

然后重启apache来激活包

sudo service apache2 restart

【讨论】:

  • 确保在进行此更改后重新启动 Apache 服务器。
  • 如果这不起作用,请查看this question。它提供了一个链接,用于下载 PHP 5.3.13(或 5.4.3)的“固定”php_curl.dll。我已经正确配置了所有内容,但 curl 没有被加载(没有出现在 phpinfo() 中)。这解决了我的问题。
  • 如果您从 cmd 使用,还有另一个 php.ini 文件,更多信息:stackoverflow.com/questions/2750580/…
  • 在 linux 上,取消注释或在 php.ini 中添加 extension=php_curl.so 并重新启动 apache
  • sudo apt-get install php-curl 然后sudo service apache2 reload 完成!
【解决方案2】:

您的 PHP 安装中未安装或启用 CURL 扩展 ext/curl。查看manual,了解如何在您的系统上安装或启用 CURL。

【讨论】:

  • (Win32) 我还必须将 c:\php 添加到我的 PATH 中。我从上面的链接中了解到阅读手册。手册说 libeay32.dllssleay32.dll 必须都在 PATH 上才能使模块工作。
猜你喜欢
  • 1970-01-01
  • 2013-05-12
  • 2015-07-02
  • 2015-05-31
  • 1970-01-01
  • 2012-08-18
  • 1970-01-01
相关资源
最近更新 更多