如何在Windows上安装cURL?

时间:2008-10-08 01:33:49

标签: php windows curl windows-xp installation

我已按照此处的所有说明操作:http://www.tonyspencer.com/2003/10/22/curl-with-php-and-apache-on-windows/

安装&配置apache 获取PHP5包 并获得CURL包。

我运行apache并运行PHP脚本。没问题。 但是当我用curl运行php脚本时,它失败了。

返回:**Call to undefined function curl_version() in C:\Program Files\Apache Software Foundation\Apache2.2\htdocs\testing.php on line 5**

在第5行被调用curl_init()

我输出php -i以查看是否调用了正确的扩展路径。它设置正确:

extension_dir => C:\PHP\ext => C:\PHP\ext
cURL support => enabled
cURL Information => libcurl/7.16.0 OpenSSL/0.9.8g zlib/1.2.3

我甚至试图运行curl_version(),但仍然会出现同样的错误 看起来PHP无法找到CURL扩展名,但php.ini(以及php -i)显示它已设置。

任何想法? :)

P.S>  System I m running on:
Windows XP
Apache 2.2
PHP 5.2.6
CURL Win32 Generic Binaries: Win32 2000/XP  metalink    7.19.0  binary  SSL enabled     Daniel Stenberg     249 KB

我没有得到这个:

Win32 2000/XP   7.19.0  libcurl     SSL enabled     Günter Knauf    1.55 MB
Should I get this one instead?

我需要使用CURL的原因是它是我项目的要求。所以,我只能坚持下去。 XAMPP ......它在Windows中如何运作?有没有可以推荐的网站?感谢。

我已经尝试了很多关于安装cURL并检查所有内容的东西,但是,我仍然在围绕这个问题盘旋,并且不知道发生了什么。

Apache服务器使用正确的PHP.ini。并且PHP.ini具有正确的extension_dir和extension = php_curl.dll 我不知道为什么它不起作用。即使我按照每一步设置它。 :(

13 个答案:

答案 0 :(得分:48)

使用以下步骤安装curl:

  1. 在浏览器中打开https://curl.haxx.se/dlwiz?type=bin

  2. 在下拉框中选择您的操作系统:Windows / Win32或Win 64.点击选择!

  3. 对于Win 32,选择是在Windows命令提示符(Generic)还是在Cygwin终端(cygwin)中使用curl。对于Win 64,选择是否在Windows命令提示符(Generic)或MinGW(MinGW64)中使用curl。单击选择!

  4. 如果需要,请选择Windows操作系统。完成。

  5. 单击“下载”以启用或禁用SSL的版本

  6. 打开下载的zip文件。将文件解压缩到易于查找的位置,例如C:\ Program Files。

  7. 测试卷曲

    1. 打开Windows命令提示符终端。 (从“开始”菜单中,单击“运行”,然后键入cmd。)

    2. 设置路径以包含放置curl.exe的目录。例如,如果将其放在C:\ Program Files \ curl中,则可以键入以下命令: set path =%path%;" c:\ Program Files \ curl"

    3. 注意:您也可以直接将curl.exe文件复制到路径中的任何现有路径

      1. 键入卷曲。 您应该看到以下消息: 卷曲:尝试卷曲 - 帮助'或者' curl -message'欲获得更多信息 这意味着已安装curl且路径正确。

答案 1 :(得分:20)

您可能误以为需要编辑的PHP.ini。首先,添加一个PHPinfo();到info.php,然后从浏览器运行。

记下您现在在变量列表中看到的PHP ini目录路径! 您可能会注意到它与您的PHP-CLI ini文件不同。

启用扩展程序

你已经完成了: - )

答案 2 :(得分:14)

我正在使用XAMPP,其中有几个php.ini文件。

您可以在php.ini文件中找到该行: ;extension=php_curl.dll

请在此行的开头删除;。您可能需要重启apache服务器。

答案 3 :(得分:9)

我也有这个问题。在所有这些步骤正确完成并且一些固定的误解之后(没有extensions_dir但是extension_dir,并且没有sessions.save_path但是session.save_path)没有任何效果。

最后我在php.net上找到了这个笔记:

注意:Win32用户注意: 要在Windows环境中启用此模块,必须在PATH中存在libeay32.dll和ssleay32.dll。您不需要来自cURL网站的libcurl.dll。

所以我复制了ssleay32.dll,libeay32.dll& php_curl.dll从/ PHP到Windows / system32并替换已经存在的文件(我注意到有旧版本的ssleay32.dll和libeay32.dll)。之后我在php_info()中找到了CURL部分;最后一切正常。

祝你好运!

答案 4 :(得分:4)

遇到此问题的其他人的另一个答案

当您取消对扩展行的评论时,请将其更改为:

extension=C:/php/ext/php_curl.dll

或扩展文件夹的位置,对我而言,直到我这样做才行。

答案 5 :(得分:2)

我最近在PHP5 for Windows Vista上安装了Curl。我最初安装PHP5时,启用了CURL库,因此没有任何关于Curl的信息出现在phpinfo()或php.ini中。

我通过重新运行PHP5安装程序(对我来说是php-5.2.8-win32-installer.msi)并选择“更改”来安装CURL。然后,我添加了CURL组件。重启Apache,CURL应该可以运行。 CURL将显示在phpinfo()中。此外,这是一个示例脚本,您可以运行它来验证它的工作原理。它显示来自Google的RSS源:

    <?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);
    ?>

答案 6 :(得分:2)

注意:Win32用户请注意 要在Windows环境中启用此模块(cURL),必须在PATH中存在libeay32.dll和ssleay32.dll。您不需要cURL站点中的libcurl.dll。

这个说明解决了我的问题。分享的想法。 libeay32.dll&amp;您可以在php安装文件夹中找到ssleay.dll。

答案 7 :(得分:1)

您可以在http://www.apachefriends.org/en/xampp.html

找到XAMPP

http://www.apachefriends.org/en/xampp-windows.html解释了XMAPP for Windows。

是的,安装后有3个php.ini文件,一个用于php4,一个用于php5,另一个用于apache。请相应地修改它们。

答案 8 :(得分:1)

我同意Erroid,你必须将PHP目录添加到PATH环境中。

PATH=%PATH%;<Your_PHP_Path>

实施例

PATH=%PATH%;C:\php

它对我有用。谢谢。

答案 9 :(得分:0)

我解决了这个问题。

在我的apache中,我必须指定:

PHPIniDir“C:// php” AddType application / x-httpd-php .php

和php.ini,而不是使用php.ini_recommend,使用php.ini_dist配置我的php.ini。

然后确保php引擎已打开。 那它现在有效。谢谢大家。

答案 10 :(得分:0)

你可以从这里使用curl .download文件的二进制文件:  http://www.paehl.com/open_source/?CURL_7.22.0 下载文件并在提取后放入任何驱动器并将绝对路径设置为环境,现在您也可以在Windows中使用curl作为命令。喜欢 c:\ curl -u user@example.com:password http://localhost:3000/user/sign_in

答案 11 :(得分:0)

您也可以使用CygWin并安装cURL包。它运作良好,完美无瑕!!

答案 12 :(得分:0)

我已经尝试了一切-但没有任何帮助。搜索几个小时后,我发现了以下信息:

  

由于某些原因,Apache 2.4.18无法加载php 7.2 curl。我更新了我的   Apache达到2.4.29并立即加载curl

http://forum.wampserver.com/read.php?2,149346,149348

我应该说什么:我更新了Apache,curl的运行就像魅力一样