Как установить cURL на Windows?

Я выполнил все инструкции здесь:http://www.tonyspencer.com/2003/10/22/curl-with-php-and-apache-on-windows/

для установки и настройки apache получить РНР5 пакеты и достань свертки.

я запускаю apache и запускаю PHP-скрипт. не проблема. но когда я запускаю PHP-скрипт с curl, это не удается.

возвращает: **Call to undefined function curl_version() in C:Program FilesApache Software FoundationApache2.2htdocstesting.php on line 5**

в которой строка 5 называется curl_init()

я вывожу php-i чтобы увидеть, вызывается ли правильный путь к расширению. Правильно установлено:

extension_dir => C:PHPext => C:PHPext
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 Я понятия не имею, почему это не работает. даже я следую за каждым шагом для настройки вверх. :(

12 ответов


вы, вероятно, ошибаетесь, что PHP.ini вам нужно отредактировать. сначала добавьте PHPinfo (); к информации.php и запустите его из своего браузера.

запишите путь к каталогу PHP ini, который вы видите в списке переменных! Вероятно, вы заметите, что он отличается от вашего файла PHP-CLI ini.

включить расширение

ты молодец :-)


выполните следующие действия для установки curl:

  1. открыть https://curl.haxx.se/dlwiz?type=bin в браузере.

  2. выберите операционную систему в раскрывающемся списке: Windows / Win32 или Win 64. Нажмите Выбрать!

  3. для Win 32 выберите, будете ли вы использовать curl в командной строке Windows (Generic) или в терминале Cygwin (cygwin). Для Win 64 выберите, будете ли вы использовать curl в командной строке Windows (Generic) или MinGW (MinGW64). Нажмите Выбрать!

  4. при необходимости выберите операционную систему Windows. Заканчивать.

  5. нажмите Загрузить для версии, которая имеет SSL включен или отключен

  6. откройте загруженный zip-файл. Извлеките файлы в удобное для поиска место, например C:\Program файлы.

тестирование curl

  1. открыть вверх по терминалу командной строки Windows. (В меню Пуск выберите пункт Выполнить, затем введите cmd.)

  2. установите путь для включения каталога, в который вы помещаете curl.исполняемый. Например, если вы положили его в C:\Program Files\curl, затем вы должны ввести следующую команду: задать путь=%path%;"c:\Program Files\curl"

Примечание: Вы также можете напрямую скопировать завиток.exe файл любой существующий путь в вашем пути

  1. введите curl. Вы должны увидеть следующее послание: curl: попробуйте "curl-help" или "curl-message" для получения дополнительной информации Это означает, что curl установлен и путь является правильным.

Я использую XAMPP, в котором есть несколько php.ini-файл.

Вы можете найти строку в PHP.ini-файл: ;extension=php_curl.dll

просьба удалить ; в начале этой линии. И вам может потребоваться перезапустить сервер Apache.


У меня также были проблемы с этим. После всех этих шагов сделаны правильно и некоторые исправлены недоразумения (нет extensions_dir но extension_dir, и нет сеансов.save_path но сессия.save_path) ничего не работает.

наконец я нашел эту записку на php.net:

Примечание: Примечание Для пользователей Win32: Чтобы включить этот модуль в среде Windows, libeay32.dll и ssleay32.dll должна присутствовать в вашем пути. Вам не нужно libcurl использует.dll из завитка сайт.

поэтому я скопировал ssleay32.dll, libeay32.библиотеки DLL & php_curl.dll от / PHP до Windows / system32 и заменил уже существующие файлы (я заметил, что были более старые версии ssleay32.dll и libeay32.файл DLL.) После этого я нашел раздел CURL в php_info (); и, наконец, все работает.

удачи!


недавно я установил Curl на PHP5 для Windows Vista. Я сделал не включить библиотеку CURL, когда я изначально установил PHP5, поэтому ничего о Curl не появлялось в phpinfo () или php.ini.

Я установил CURL, повторно запустив установщик PHP5 (php-5.2.8-win32-installer.msi для меня) и выбор "изменить". Затем я добавил компонент CURL. Перезапустите Apache, и CURL должен работать. CURL появится в phpinfo (). Кроме того, вот пример сценария, который вы можете запустить убедитесь, что он работает. Он отображает RSS-канал от Google:

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

Примечание: Примечание Для пользователей Win32 Чтобы включить этот модуль (cURL) в среде Windows, libeay32.dll и ssleay32.dll должна присутствовать в вашем пути. Вам не нужно libcurl использует.dll с сайта cURL.

эта записка решила мою проблему. Думал поделиться. libeay32.библиотеки DLL & ssleay.dll вы найдете в папке установки php.


еще один ответ для других людей, у которых была эта проблема

когда вы не комментируете строку расширения, измените ее на:

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

или расположение папки расширения, для меня это не сработало, пока я не сделал это


вы можете найти XAMPP в http://www.apachefriends.org/en/xampp.html

http://www.apachefriends.org/en/xampp-windows.html объясняет XMAPP для Windows.

Да, есть 3 php.ini-файлы после установки, один для php4, один для php5, и один для apache. Пожалуйста, измените их соответствующим образом.


Я согласен с Erroid, вы должны добавить каталог PHP в среду PATH.

PATH=%PATH%;<Your_PHP_Path>

пример

PATH=%PATH%;C:\php

это сработало для меня. Спасибо.


Я решил проблему.

в моем apache я должен указать:

PHPIniDir "C://php" Приложение AddType / x-httpd-php .в PHP

и для php.ini, вместо использования php.ini_recommend, используйте php.ini_dist для настройки моего php.ini.

затем убедитесь, что движок php включен. тогда это работает сейчас. Спасибо всем.


вы можете использовать двоичный файл curl .загрузить файл отсюда : http://www.paehl.com/open_source/?CURL_7.22.0 Загрузите файл и после извлечения поместите на любой диск и установите абсолютный путь в среду теперь вы также можете использовать curl в качестве команды в windows. как c:\curl -u user@example.com:password http://localhost:3000/user/sign_in


вы также можете использовать CygWin и установите пакет cURL. Он работает очень хорошо и безупречно!!