【问题标题】:WAMP Curl installationWAMP 卷曲安装
【发布时间】:2011-03-30 00:47:07
【问题描述】:

我已从 php.ini 文件中取消注释以下内容

;extension=php_bz2.dll
extension=php_curl.dll
;extension=php_dba.dll

另外,我已将 php_curl.dll 复制到 windows\system32 并重新启动 apache 服务器。

我正在测试以下脚本

<?php

$curl_handle=curl_init();
curl_setopt($curl_handle,CURLOPT_URL,'http://example.com');
curl_setopt($curl_handle,CURLOPT_CONNECTTIMEOUT,2);
curl_setopt($curl_handle,CURLOPT_RETURNTRANSFER,1);
$buffer = curl_exec($curl_handle);
curl_close($curl_handle);

if (empty($buffer))
{
    print "Sorry, example.com are a bunch of poopy-heads.<p>";
}
else
{
    print $buffer;
}
?>

并得到以下错误

Fatal error: Call to undefined function curl_init() in C:\wamp\www\t.php on line 3

任何帮助将不胜感激?

【问题讨论】:

    标签: php apache curl wamp


    【解决方案1】:

    确保您已从正确的 php.ini 文件中取消注释扩展名。您应该通过phpinfo() 命令检查是否启用了扩展。

    【讨论】:

    • 这解决了我的问题 1. 完全停止 WAMP。 2.找到您的 WAMP 文件夹:C:\Path\To\WAMP\bin\Apache\ApacheVersion\bin\ 3.编辑 php.ini 并取消注释 extension=php_curl.dll 4.重新启动 WAMP。这应该有望解决它。
    • 但我仍然不明白为什么我必须对 2 php.ini 进行更改,而不是应该在 php 文件夹中的那个?为什么 wamp 安装从 apache 文件夹中选择 php.ini
    • @Huzaifa:是一个ini文件,你得弄清楚它到底是哪一个。
    • 那么我能找到真正的那个吗?
    • @Huzaifa: 是的,更改一些设置重启服务器,如果更改受到影响,则表示该文件不是正确的。
    【解决方案2】:

    或者更简单,点击通知区域(屏幕右下角)中的 wamp 图标, 浏览 PHP > PHP 扩展并单击第二项“php_curl”。 Wamp 会自动重启。

    【讨论】:

    • 这是在 WAMP 下管理扩展的正确方法
    【解决方案3】:

    我遇到了同样的问题,我解决了它只是卸载 wamp2_x64(首先安装在 c:\wamp 中)并在文件夹 C:/Program Files (x86)/wamp 中重新安装 wamp_x86。

    这似乎解决了问题,我想这可能是 64 位 dll 的问题。

    【讨论】:

      【解决方案4】:

      WAMP服务器某包中的php_curl.dll是错误的文件,我也遇到了同样的问题,我在/wamp/bin/php/php[youversion/ext/找到了正确的php_curl.dll文件并替换了它它奏效了。 见这篇文章:http://forum.wampserver.com/read.php?2,85716

      【讨论】:

        【解决方案5】:

        在 64 位 Windows 7 上遇到同样的问题。这对我有用。

        Soren 从另一个 SO 线程回答 - CURL for WAMP

        “似乎某处存在错误。如果您在 Win 7 64 位上遇到此问题,请尝试安装 apache 插件版本 2.2.9 和 php 插件版本 5.3.1 并切换到 WAMP 中的那些,然后激活 CURL 扩展. 这对我有用。”

        【讨论】:

          【解决方案6】:

          我在使用 Wampserver 2.2(64 位)时遇到了同样的问题。以下是我为使其正常工作所做的工作:

          1) 进入 wampserver->PHP->PHP 扩展,启用 php_curl 扩展

          2) 打开 \bin\php\php5.3.13\php.ini 并取消注释以下行: extension=php_curl.dll

          3) 转到 \bin\php 并将 libeay32.dll 和 ssleay32.dll 复制到您的 windows\system32 文件夹中

          4) 如果您尝试重新启动 wampserver 的服务,您会注意到 lib_curl 仍然无法正常工作。原来是打包中的php_curl.dll版本编译不正确。

          Apache 的错误日志包含以下内容:

          警告:PHP 启动:无法加载动态库

          'c:/wamp/bin/php/php5.3.13/ext/php_curl.dll' - 应用程序无法启动,因为它的并排配置不正确。请查看应用程序事件日志或使用命令行 sxstrace.exe 工具了解更多详细信息。

          5) 您需要正确编译的 php_curl.dll 版本。我从这篇博文下载了 php_curl-5.3.13-VC9-x64.zip:

          [www.anindya.com]

          直接链接:

          [www.mediafire.com]

          我将 \bin\php\php5.3.13\ext 中的 php_curl.dll 替换为上面的那个,一切正常微笑笑脸 6) 要测试 cURL 扩展是否适合你,试试这个代码 sn-p

          `

          <?php
          error_reporting(E_ALL);
          ini_set('display_errors', '1');
          $ch = curl_init();
          curl_setopt($ch, CURLOPT_URL,
          'http://news.google.com/news?hl=en&topic=t&output=rss');
          curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
          $contents = curl_exec ($ch);
          echo $contents;
          curl_close ($ch);
          ?>
          

          `

          这是另一个包含类似信息的帖子(我在写完这些说明后发现了这个): [www.o3n.org]

          【讨论】:

            【解决方案7】:

            如果您已经从 php.ini 中取消注释行并且仍然收到错误,则 你应该确保这个扩展文件是否存在于 php 文件夹中

            所以检查这个文件

            php_curl.dll

            {wamp}\bin\php\php5.x.x\ext\

            如果不存在,请从互联网上下载并将其粘贴到那里

            重启 Apache。

            【讨论】:

              【解决方案8】:
              • 为 windows 下载 curl (http://curl.haxx.se/download.html)
              • 将 zip 文件内容粘贴到 C:\wamp\bin\apache\apache2.2.x
              • 找到并打开您的 php.ini 文件(位于 C:\wamp\bin\php\php5.x)
              • 在您的 php.ini 文件中,更改/取消注释以下行: ;extension=php_curl.dll(删除分号即可)
              • 重启Apache或整个服务器即可享用

              【讨论】:

                【解决方案9】:

                这解决了我的问题

                1. 完全停止 WAMP。
                2. 找到您的 WAMP 文件夹 C:\Path\To\WAMP\bin\Apache\ApacheVersion\bin\
                3. 编辑 php.ini 并取消注释 extension=php_curl.dll
                4. 重新启动 WAMP。

                这应该可以解决它。

                【讨论】:

                  猜你喜欢
                  • 2015-07-22
                  • 2018-12-05
                  • 2013-05-24
                  • 2016-07-05
                  • 2018-08-13
                  • 1970-01-01
                  • 2011-06-08
                  • 2012-01-06
                  • 1970-01-01
                  相关资源
                  最近更新 更多