Пересылка Web-файлов из командной строки. Установить curl


Пересылка Web-файлов из командной строки | Windows IT Pro/RE

Curl поможет управлять данными, размещенными в Web

В данной статье рассматривается бесплатный инструмент Curl, с помощью которого можно передавать и принимать Web-страницы из командной строки. Благодаря Curl легко автоматизировать многие операции информационной защиты и администрирования, например извлечь Web-страницу для анализа или загрузить исправление для системы безопасности из Web.

Установка Curl

Curl входит в состав многих дистрибутивов Unix. Имеются двоичные файлы и исходные тексты для большинства других операционных систем. Даже программисты, работающие с открытым PHP, могут использовать Curl для безопасного доступа к Web-контенту непосредственно из PHP-сценариев.

Для работы Curl с Web-узлами Secure Sockets Layer (SSL) необходим пакет OpenSSL. Существуют две версии Curl: одна с SSL, другая без SSL. Рекомендую первую, поскольку SSL надежно защищает данные.

Прежде чем использовать Curl с функциями SSL, необходимо загрузить из сети и отдельно установить пакет OpenSSL. Двоичные файлы OpenSSL for Windows можно загрузить с сайта проекта GnuWin32 SourceForge по адресу http://gnuwin32.sourceforge.net/packages/openssl.htm. На этом сайте имеется и много других полезных инструментов, портированных в Windows.

Следует загрузить и установить пакет OpenSSL, затем скопировать два DLL-файла в каталог system32:

copy "C:Program FilesGnuWin32 binlibeay32.dll" %windir%system32 copy "C:Program FilesGnuWin32 binlibssl32.dll" %windir%system32

После этого можно установить Curl. SSL-совместимые двоичные файлы Curl для Windows можно найти по адресу http://curl.haxx.se/latest.cgi?curl=win32-ssl-sspi. Новейшая версия, curl 7.15.0, находится в win32-ssl-sspi.zip, который содержит файл curl.exe и документацию.

После установки Curl следует убедиться в его работоспособности, введя команду

curl http://isc.sans.org/ infocon.txt

Если на экране появится слово, обозначающее цвет (например, green), значит, Curl работает. В этом простом примере Curl извлекает содержание Infocon из Web-узла Internet Storm Center института SANS. Green означает, что Internet функционирует нормально и серьезных угроз не обнаружено. Если же вместо green на экране появляются слова yellow, orange или red, то отложите эту статью и посетите сайт http://isc.sans.org, чтобы узнать о состояниях повышенной опасности в Internet. В случае ошибки необходимо проверить правильность установки Curl.

В сущности, Curl извлекает Web-страницу, а затем выдает исходный текст HTML страницы на консоль. Однако возможности утилиты шире. Curl располагает встроенной функцией проверки ошибок. Например, команда

curl http://noserverhere

выдает ошибку Curl: (6) Could not resolve host: noserverhere; Host not found. Коды ошибок можно использовать в сценариях, чтобы проверить доступность Web-страницы или реакцию Web-сервера. Например, если использовать Curl для ежедневного извлечения Web-страницы, в частности суточной статистики Web-узла, можно дополнить сценарий исходным текстом, отыскивающим коды ошибок. Если Curl выдает код ошибки Curl: (7) couldn?t connect to host, то можно немедленно передать предупреждение или отправить сообщение по электронной почте.

Извлечение шифрованных данных

Одно из важнейших достоинств Curl — совместимость с SSL. Запрошенные страницы HTTPS передаются через сеть в зашифрованном виде, а затем Curl выводит на экран восстановленный текст. Кроме того, Curl проверяет сертификаты — дату завершения действия сертификата, соответствие имени хост-компьютера хост-имени в сертификате и уровень доверия к корневому сертификату — и предупреждает, если сертификат некорректен. Параметр -cacert позволяет указать определенный файл сертификата. Проверка сертификатов отменяется с помощью параметра -k. Альтернативный подход — использовать параметр -insecure.

Не только для WWW

Возможности Curl шире простой пересылки файлов через Internet. С помощью Curl можно быстро получить список каталогов FTP-сайта:

curl ftp://myftpsite

Чтобы увидеть подкаталоги сайта, следует ввести команду

curl ftp://myftpsite/subdir/

Для загрузки файла из сети достаточно указать в URL имя файла. В следующем примере файл с именем readme.txt загружается прямо из командной строки и отображается на экране:

curl ftp://ftp.microsoft.com/ deskapps/games/readme.txt

Нередко проще подготовить сценарий с Curl для ввода FTP-файлов, чем использовать команду FTP интерактивно.

По умолчанию данные выводятся непосредственно на консоль, но их можно перенаправить в файл с помощью параметров -o и -O. Чтобы получить страницу и сохранить ее на диске, следует указать параметр -o. Параметр -O сохраняет полученную страницу в локальном файле, и Curl извлекает имя удаленного документа. Если в URL имя файла не указано, то эта операция закончится неудачей. Если использовать Curl для передачи на Web-узел запроса без имени файла, но нужно сохранить результат в файле, можно указать имя файла в командной строке, например:

curl -o whoisOutputFile http://www.arin.net/whois/
Аутентификация

Curl обеспечивает методы аутентификации Basic, Digest и интегрированный. На большинстве сайтов доступ к страницам с аутентификацией на базе форм можно получить с использованием функций отправки Curl, что будет продемонстрировано чуть ниже. Это значит, что можно передать данные формы, в частности имя пользователя и пароль, на удаленный Web-узел, на Web-странице которого выводится запрос на ввод информации. Для пересылки учетных данных можно использовать параметр -u или вставить их в URL, что традиционно делается в FTP, например:

curl ftp://username: password@myhtmlsite

С помощью Curl приемы, заимствованные из FTP, можно перенести в HTTP, как в следующем примере:

curl http://username:password @myhtmlsite/default.htm

Curl также обеспечивает доступ к Web-страницам через proxy-сервер. Поэтому Curl можно настроить на использование proxy-сервера для аутентификации в режимах Basic, Digest и NTLM.

Читайте документацию

В одной статье трудно охватить все многочисленные функции Curl, среди которых и загрузка файлов на сервер (-T), и просмотр только информации в заголовке HTTP (-I), и просмотр всех данных в детальном режиме (-V), и скрытый вывод (-s). Я рекомендую более подробно ознакомиться с функциями Curl в руководстве, опубликованном по адресу http://curl.haxx.se/docs.

Пример использования Curl

Ознакомившись с основами Curl, рассмотрим простой пример извлечения данных из Web-узла при заданных входных данных. Построим простой инструмент Whois, который демонстрирует простоту и удобство применения Curl и процедуру отправки данных на Web-узел с использованием параметра -d. В данном примере Curl посылает IP-адрес на Web-узел Arin Whois, а затем извлекает результаты из этого сайта. Whois отыскивает информацию о владельце IP-адреса.

Перед началом работы важно исследовать Web-узел, так как в исходном тексте каждого сайта есть свои особенности, и Curl не всегда одинаково работает с любыми сайтами. Предварительное посещение сайта позволяет собрать необходимую информацию для работы Curl. В данном примере я воспользовался браузером, чтобы посетить Web-узел http://www.arin.net/whois/, и обратил внимание, что на сайте имеется единственное поле ввода данных, в котором посетители указывают интересующий их IP-адрес. Необходимо получить детали этого поля, которое представляет собой часть Web-формы. В данном примере используется Perl-сценарий formfind.pl (http://cool.haxx.se/cvs.cgi/curl/perl/contrib/ formfind?rev=HEAD&content-type=text/vnd.viewcvs-markup). Сценарий Formfind.pl преобразует данные формы в удобные выходные результаты и упрощает ручной поиск данных в HTML. Конечно, для запуска Formfind на компьютере должен быть развернут Perl. Хороший пакет Win32 Perl можно заказать на сайте ActiveState ActivePerl по адресу http://www.activestate.com.

Рассмотрим пример более подробно. Во-первых, обратимся к Web-узлу, содержащему форму, которая запрашивает информацию:

curl -o whoisOutputFile http://www.arin.net/whois/

Эта команда извлекает страницу Whois из http://www.arin.net и сохраняет ее в текстовом файле whoisOutputFile, который содержит исходный текст HTML, воспроизводимый браузером при посещении сайта.

Затем необходимо найти и выделить данные формы:

./formfind.pl

Formfind выдает переменные формы и их возможные величины. В данном примере выходные результаты имеют довольно простой вид (см. экран 1).

Следует обратить внимание на данные формы Input с именем queryinput. Это текстовое поле, в которое Curl должен послать искомый IP-адрес. Конкретный IP-адрес не имеет значения — в данном примере использовался адрес Microsoft. С помощью параметра -d искомый IP-адрес пересылается в поле queryinput:

curl -d "queryinput= 207.46.133.140" http://ws.arin.net/cgibin/ whois.pl

Команда Curl с параметром -d отыскивает данные в форме, в данном случае queryinput, которые представляют собой искомый IP-адрес. При этом меняется целевой адрес; форма должна передавать данные на новый URL, который представляет сценарий whois.pl. Новый целевой адрес можно увидеть на выходе formfind на экране 1.

В данном примере также получен исходный текст HTML ответа Whois, но он скрыт группой тэгов HTML. По умолчанию сообщение о статусе Curl показывает размер документа, процент выполнения и скорость пересылки. Выходные данные можно немного расчистить и отфильтровать имя организации, которой принадлежит IP-адрес. Статус Curl можно блокировать с помощью параметра -s. Команду следует выполнять через grep, чтобы получить только OrgName:

curl -s -d "queryinput= 207.46.133.140" http://ws.arin.net/cgibin/ whois.pl | grep OrgName

В данном примере выходные результаты показывают, что OrgName — Microsoft Corp.

И наконец, не рекомендуется жестко задавать IP-адрес, поэтому запрос следует поместить внутрь простого сценария с именем arin.bat:

@echo off curl -k -s -d "queryinput= %1" http://ws.arin.net/cgibin/ whois.pl | grep OrgName

На экране 2 показаны выходные результаты, полученные при запуске сценария из командной строки.

Простота использования Curl

В данной статье показано, как Curl извлекает и анализирует данные с удаленного Web-узла, и позволяет просматривать Web-данные и управлять ими из командной строки.

Curl располагает богатым набором параметров командной строки. С помощью команды -help можно быстро получить справку по конкретным параметрам. Например, с помощью

curl -help | grep proxy

можно найти все параметры, относящиеся к работе с proxy-сервером.

Несмотря на простоту использования, инструмент Curl — не всегда оптимальный выбор. Например, чтобы исследовать Web-узел и извлечь несколько файлов, можно воспользоваться запускаемой из командной строки Internet-утилитой захвата файлов wget, которая поддерживает универсальные символы. Более подробно Wget будет рассмотрена в следующий раз.

Джеф Феллинг - Директор по информационной безопасности компании Quantive. Автор книги IT Administrator?s Top 10 Introductory Scripts for Windows (издательство Charles River Media). [email protected]

www.osp.ru

Установка cURL на Denwer

Краткое знакомство с библиотекой cURL под PHP от Дэниела Стенберга (Daniel Stenberg). Установка и настройка libcurl на локальном сервере — сборка Денвер.

libcurl — это библиотека, позволяющая взаимодействовать с различными типами серверов по различным протоколам. Libcurl также поддерживает HTTPS сертификацию, HTTP POST и PUT, загрузку по FTP и HTTP, прокси, куки и user+password авторизацию.

В общем, с появлением функций библиотеки libcurl в PHP, начиная с версии 4.0.2, разработчики получили достаточно простой и удобный инструмент для решения ряда задач. В тоже время, надо учитывать, что libcurl не всегда имеется в наличии. В частности, в сборке Денвер (англ. Denwer) эту библиотеку придётся установить и подключить отдельно. Как это сделать?

  1. Исходя из того, что у вас уже установлен локальный сервер, в нашем случае речь идёт о сборке Денвер, нам понадобится скачать пакет расширений модули PHP5, который, помимо всего прочего, содержит и библиотеку libcurl.
  2. В результате вы получите exe-файл, например: Denwer3_PHP5_2010-03-18_php5.3.1.exe — запускаем его, и следуем появляющимся указаниям.

    Примечание: перед тем как приступить к установке пакета расширений, убедитесь, что локальный сервер остановлен. В случае если и это не помогло, что бывает, когда сервер установлен в системной директории, попробуйте запустить установку от имени администратора

  3. Откройте файл php.ini, по умолчанию расположенный в папке: C:\WebServer\usr\local\php5, и найдите в нём следующую строку: ;extension=php_curl.dll
  4. Уберите символ точки с запятой (;) в начале строки и сохраните файл. Если такой строки нет – добавьте её (без символа точки с запятой).
  5. Установка и настройка libcurl завершено. Чтобы проверить, что всё сделано правильно, можно просмотреть данные, возвращаемые php-функцией phpinfo(). В частности, помимо всего прочего, должно появиться что-то вроде такого:

wmas.msk.ru

Устанавливаем curl на denver

Думаю все вкурсе что в денвере порой отсутствуют некоторые библиотеки которые делают выполнение некоторого php кода невозможным. В прошлый раз к примеру в этой статье мы говорили про устновку библиотеки с помощью которой мы сможем работать с mb функциями (хотя на более свежих денверах я подозреваю что данная библиотека идет по умолчани).  В этот раз я дам несколько советов о том как устновить curl библиотеку чтоб она работала и денвер не выдавал никаих ошибок.

В интернете многие советуют уствновить пакет дополнения/обновления на денвер, который сам все сделает. С одной стороны это все хорошо, ну а в случае если ваш денвер уже слегка устарел и вы поставите на него данный пакет обновлений то он просто может отказаться работать и выведет вам несколько замысловатых ошибок с которыми вы сразу направитесь в поиск, и тут вы потеряете не мало времени, а ведь если вам понадобилась данная библиотека то вы скорее всего планируете закончить свой код побыстрее. А в данном случае у вас появляются 2 проблеммы вместо одной. Первая это скорее закончить код, вторая это установить curl либо снести существующий денвер и поставить другой. Оба действия подразумевают переживания и затрату времени.

И так достаточно рассуждений, пора и меру знать. Перед установкой любых дополнений, обновления на denver  обязательно сделайте копию вашей папки Z:\usr\local\php5 буква конечно у вас будет явно другой. Далее можете начинать свои опыты над денвером.

Рассмотрим 2 способа

  1. Устновить пакет обновлений
  2. Найти библиотеку curl

Лично мне подошло второе. Для того чтоб найти нужную и подходящую версию curl библиотеки необходимо знать версию php. Узнать ее можно несколькими способами. Первый запустить денвер и вызвать phpinfo(). Второй еще проще заходим в папку Z:\usr\local\php5 либо Z:\usr\local\php5\ext и смотрим там на версию библиотек.

 

Из картинки выше видно что моя версию php 5.2.4.4 (надо бы все же найти время и обновить ее) и все устновленне библиотеки имеют такую же версию. Следовательно и curl библиотеку мне необходимо найти такую же. На картинке выше так же видно что моя версия curl библиотеки все же отличается версией, у нее версия 5.2.6.6 в моем случае это не так важно. Как правило версии стоящие рядом отлично работают друг с другом, хотя бывают и исключения. Так что старайтесь найти именно свою версию (чего мне не удалось).

После того как вы нашли curl библиотеку нужной версии кидаем ее в папку Z:\usr\local\php5\ext (у вас другая буква диска). Далее редактиркуем php.ini он лежит в папке Z:\usr\local\php5. Открываем этот файл в текстовом редакторе и ищем строку extension=php_curl.dll (у меня она находится в 596 строке) и убираем перед ней символ ";" после чего файл сохряняем, а denver перезапускаем. Если перезапуск прошел без ошибок то все устновлено верно, и версия curl подошла.

www.wemarus.ru

Установка cURL на Denwer

Вы здесь: Главная - PHP - PHP Основы - Установка cURL на Denwer

Очень давно не писал ничего по PHP, поэтому решил написать небольшую серию статей, посвящённых великолепному модулю PHP - cURL. Но прежде чем его использовать, cURL надо установить на Denwer, так как в базовую версию этого пакета cURL не входит.

Прежде чем переходить к установке cURL на Denwer, давайте кратко расскажу о возможностях, которые предоставляет данный модуль. cURL - это удобный способ для моделирования действий пользователя на сервере. Фактически, Вы можете проверять ответ сервера при том или ином запросе. Например, можете отправлять POST-запросы и смотреть, что отдаёт сервер. Например, хотите проверить работу системы авторизации. Разумеется, можно и вручную через браузер вводить логин и пароль и смотреть, что происходит. Но гораздо удобнее будет написать небольшую серию тестов, в которых происходит отправка различных примеров логина и пароля, и при этом выводится ответ от сервера: успешная авторизация или нет. А Вы уже смотрете: правильно работает скрипт авторизации или нет. Вот для подобных целей и используется модуль cURL.

А теперь давайте займёмся установкой модуля cURL на Denwer:

  • Скачайте пакет расширений: "PHP5: дополнительные модули" по этой ссылке: http://www.denwer.ru/packages/php5.html.
  • Устанавливаете скачанный пакет (предварительно остановите сервер, если он запущен).
  • В файле "usr/local/php5/php.ini" уберите комментарий из строчки: ";extension=php_curl.dll", стерев кавычки в начале строки.
  • Запустите сервер.
  • Проверьте данные в phpinfo(). Если увидите "cURL support enabled", значит, всё хорошо. Если нет, то внимательно проверьте: все ли шаги Вы выполнили правильно.

Думаю, что в следующей статье (а, может быть, через одну), мы с Вами будем разбирать этот модуль уже на примере использования его в PHP-скриптах, так что не переключайтесь!

  • Создано 04.03.2011 23:33:49
  • Михаил Русаков
Предыдущая статья Следующая статья

Копирование материалов разрешается только с указанием автора (Михаил Русаков) и индексируемой прямой ссылкой на сайт (http://myrusakov.ru)!

Добавляйтесь ко мне в друзья ВКонтакте: http://vk.com/myrusakov.Если Вы хотите дать оценку мне и моей работе, то напишите её в моей группе: http://vk.com/rusakovmy.

Если Вы не хотите пропустить новые материалы на сайте,то Вы можете подписаться на обновления: Подписаться на обновления

Если у Вас остались какие-либо вопросы, либо у Вас есть желание высказаться по поводу этой статьи, то Вы можете оставить свой комментарий внизу страницы.

Порекомендуйте эту статью друзьям:

Если Вам понравился сайт, то разместите ссылку на него (у себя на сайте, на форуме, в контакте):

  1. Кнопка: <a href="https://myrusakov.ru" target="_blank"><img src="https://myrusakov.ru//images/button.gif" alt="Как создать свой сайт" /></a>

    Она выглядит вот так:

  2. Текстовая ссылка:<a href="https://myrusakov.ru" target="_blank">Как создать свой сайт</a>

    Она выглядит вот так: Как создать свой сайт

  3. BB-код ссылки для форумов (например, можете поставить её в подписи): [URL="https://myrusakov.ru"]Как создать свой сайт[/URL]

myrusakov.ru

Как установить curl в php5? Ubuntu Linux

Я считаю, что пакет php5-curl должен делать трюк. Используйте диспетчер пакетов по вашему выбору, а депо следует позаботиться.

sudo apt-get install php5-curl

После этого вам необходимо перезапустить сервер:

sudo service apache2 restart

Кроме того, если вы используете php-fpm, вам нужно будет перезапустить php5-fpm вместо

sudo service php5-fpm restart

Мой conf: Ubuntu 11.10, уже установленные mysql, php5 и apache2, перед установкой php5-curl в терминале я сделал:

редактировать список источников, например:

sudo -H gedit /etc/apt/sources.list

вы можете проверить свою конфигурацию в http://repogen.simplylinux.ch/

Следующая команда:

apt-get install aptitude

Следующая команда:

aptitude install php5-curl

Вы получаете что-то вроде этого:

The following NEW packages will be installed: php5-curl{b} 0 packages upgraded, 1 newly installed, 0 to remove and 0 not upgraded. Need to get 27.1 kB of archives. After unpacking 127 kB will be used. The following packages have unmet dependencies: php5-curl: Depends: php5-common (= 5.3.6-13ubuntu3.1) but 5.3.6-13ubuntu3.8 is installed. The following actions will resolve these dependencies: Keep the following packages at their current version: 1) php5-curl [Not Installed] Accept this solution? [Y/n/q/?] n

Ваш ответ здесь: n

Печать следующих строк:

The following actions will resolve these dependencies: Downgrade the following packages: 1) libapache2-mod-php5 [5.3.6-13ubuntu3.8 (now) -> 5.3.6-13ubuntu3.1 (oneiric)] 2) php5 [5.3.6-13ubuntu3.8 (now) -> 5.3.6-13ubuntu3.1 (oneiric)] 3) php5-cli [5.3.6-13ubuntu3.8 (now) -> 5.3.6-13ubuntu3.1 (oneiric)] 4) php5-common [5.3.6-13ubuntu3.8 (now) -> 5.3.6-13ubuntu3.1 (oneiric)] 5) php5-gd [5.3.6-13ubuntu3.8 (now) -> 5.3.6-13ubuntu3.1 (oneiric)] 6) php5-mysql [5.3.6-13ubuntu3.8 (now) -> 5.3.6-13ubuntu3.1 (oneiric)] Accept this solution? [Y/n/q/?] y

Ваш ответ здесь: y.

В вашем браузере откройте phpinfo (), проверьте свойство:

extension_dir /usr/lib/php5/20090626+lfs

В этой папке вы должны теперь иметь curl.so

Редактировать php.ini

nano /etc/php5/apache2/php.ini

найти «динамические расширения» добавить код ниже:

extension=curl.so

После этого перезапустите apache2 и проверьте phpinfo (), завиток должен быть включен

полное решение для установки расширения LAMP и cURL:

sudo apt-get update sudo apt-get install php5 sudo apt-get install libapache2-mod-php5 sudo apt-get install curl libcurl3 libcurl3-dev php5-curl

а потом:

cd /etc/php5/apache2/ sudo nano php.ini

добавьте эту команду: extension=curl.so

последнее, что restart apache

ubuntu.fliplinux.com

curl - Установите cURL для использования локальных виртуальных хостов

Действительно ли сервер получает запросы и правильно ли вы обрабатываете имя хоста (псевдоним)?

после добавления в мой файл .hosts

Проверьте журнал своего веб-сервера, чтобы узнать, как пришел запрос...

curl имеет опции для отправки отправленного запроса и полученного ответа, он называется trace, который будет сохранен в файле.

- трассировка

Если вам не хватает информации о хосте или заголовке, вы можете принудительно настроить эти заголовки с помощью опции конфигурации.

Я бы получил запрос curl, работающий в командной строке, а затем попытаюсь реализовать на PHP.

параметр конфигурации

-K/- config

параметры, которые имеют значение в curl, здесь

- след         Включает полный дамп всех входящих и исходящих данных, включая описательную информацию, в данный выходной файл. Используйте "-" в качестве имени файла для вывода, отправленного на стандартный вывод.

This option overrides previous uses of -v/--verbose or --trace-ascii. If this option is used several times, the last one will be used.

-К/- конфигурации         Укажите, какой конфигурационный файл нужно читать с помощью аргументов curl. Конфигурационный файл представляет собой текстовый файл, в котором могут быть записаны аргументы командной строки, которые затем будут использоваться так, как если бы они были написаны на фактическом         командная строка. Параметры и их параметры должны быть указаны в одной и той же строке файла конфигурации, разделенной пробелом, двоеточием, значком равенства или любой их комбинацией (однако предпочтительный разделитель         тор - знак равенства). Если параметр должен содержать пробелы, параметр должен быть заключен в кавычки. В двойных кавычках доступны следующие escape-последовательности: \,\",\t,\n,         \ r и \v. Обратная обратная косая черта, предшествующая любой другой букве, игнорируется. Если первый столбец строки конфигурации является символом '#', остальная часть строки будет рассматриваться как комментарий. Только напишите один вариант за         физической линии в файле конфигурации.

Specify the filename to -K/--config as '-' to make curl read the file from stdin. Note that to be able to specify a URL in the config file, you need to specify it using the --url option, and not by simply writing the URL on its own line. So, it could look similar to this: url = "http://curl.haxx.se/docs/" Long option names can optionally be given in the config file without the initial double dashes. When curl is invoked, it always (unless -q is used) checks for a default config file and uses it if found. The default config file is checked for in the following places in this order: 1) curl tries to find the "home dir": It first checks for the CURL_HOME and then the HOME environment variables. Failing that, it uses getpwuid() on UNIX-like systems (which returns the home dir given the current user in your system). On Windows, it then checks for the APPDATA variable, or as a last resort the '%USERPROFILE%\Application Data'. 2) On windows, if there is no _curlrc file in the home dir, it checks for one in the same dir the curl executable is placed. On UNIX-like systems, it will simply try to load .curlrc from the deter- mined home dir. # --- Example file --- # this is a comment url = "curl.haxx.se" output = "curlhere.html" user-agent = "superagent/1.0" # and fetch another URL too url = "curl.haxx.se/docs/manpage.html" -O referer = "http://nowhereatall.com/" # --- End of example file --- This option can be used multiple times to load multiple config files.

qaru.site

Устанавливает параметр для сеанса CURL

CURLOPT_CAINFO Имя файла, содержащего один или более сертификатов, с которыми будут сверяться узлы. Этот параметр имеет смысл только при использовании совместно с CURLOPT_SSL_VERIFYPEER. Может потребоваться абсолютный путь.
CURLOPT_CAPATH Директория, содержащая несколько CA сертификатов. Используйте этот параметр совместно с CURLOPT_SSL_VERIFYPEER.
CURLOPT_COOKIE Содержимое заголовка "Cookie: ", используемого в HTTP-запросе. Обратите внимание, что несколько cookies разделяются точкой с запятой с последующим пробелом (например, "fruit=apple; colour=red")
CURLOPT_COOKIEFILE Имя файла, содержащего cookies. Данный файл должен быть в формате Netscape или просто заголовками HTTP, записанными в файл. Если в качестве имени файла передана пустая строка, то cookies сохраняться не будут, но их обработка все еще будет включена.
CURLOPT_COOKIEJAR Имя файла, в котором будут сохранены все внутренние cookies текущей передачи после закрытия дескриптора, например, после вызова curl_close.
CURLOPT_CUSTOMREQUEST

Собственный метод запроса, используемый вместо "GET" или "HEAD" при выполнении HTTP-запроса. Это полезно при запросах "DELETE" или других, более редких HTTP-запросах. Корректными значениями будут такие как "GET", "POST", "CONNECT" и так далее; т.е. не вводите здесь всю строку с HTTP-запросом. Например, указание "GET /index.html HTTP/1.0\r\n\r\n" будет неправильным.

Замечание:

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

CURLOPT_DEFAULT_PROTOCOL

Протокол по умолчанию, если он отсутствует в схеме URL.

Добавлено в cURL 7.45.0. Доступно с PHP 7.0.7.
CURLOPT_DNS_INTERFACE

Устанавливает имя сетевого интерфейса, к которому привязан DNS. Это должно быть имя интерфейса, а не адрес.

Добавлено в cURL 7.33.0. Доступно с PHP 7.0.7.
CURLOPT_DNS_LOCAL_IP4

Установить локальный IPv4-адрес, по которому доступне DNS. Адрес должен быть представлен в виде строки, содержащий одно число.

Добавлено в cURL 7.33.0. Доступно с PHP 7.0.7.
CURLOPT_DNS_LOCAL_IP6

Установить локальный IPv6-адрес, по которому доступне DNS. Адрес должен быть представлен в виде строки, содержащий одно число.

Добавлено в cURL 7.33.0. Доступно с PHP 7.0.7.
CURLOPT_EGDSOCKET Наподобие CURLOPT_RANDOM_FILE, за исключением того, что имя файла устанавливается в сокет Entropy Gathering Daemon.
CURLOPT_ENCODING Содержимое заголовка "Accept-Encoding: ". Это позволяет декодировать запрос. Поддерживаемыми кодировками являются "identity", "deflate" и "gzip". Если передана пустая строка, "", посылается заголовок, содержащий все поддерживаемые типы кодировок. Добавлен в версии cURL 7.10.
CURLOPT_FTPPORT Значение, которое будет использоваться для определения IP-адреса для команды "PORT" FTP-протокола. Команда "PORT" сообщает серверу, с каким IP-адресом он должен устанавливать соединение. Это может быть IP-адрес, имя хоста, имя сетевого интерфейса (под Unix) или просто '-' для использования системного IP-адреса по умолчанию.
CURLOPT_INTERFACE Имя используемого сетевого интерфейса. Может быть именем интерфейса, IP адресом или именем хоста.
CURLOPT_KEYPASSWD Пароль, который требуется для использования закрытого ключа CURLOPT_SSLKEY или CURLOPT_SSH_PRIVATE_KEYFILE. Добавлено в cURL 7.16.1.
CURLOPT_KRB4LEVEL Уровень безопасности KRB4 (Kerberos 4). Любое из следующих значений (в порядке от слабого к самому сильному) корректно: "clear", "safe", "confidential", "private".. Если указанная строка отличается от данных значений, будет использовано значение "private". Установка этого параметра в NULL полностью отключит безопасность KRB4. На данный момент безопасность KRB4 работает только с FTP-транзакциями.
CURLOPT_LOGIN_OPTIONS Используется для установки специфичных для протокола настроек логина, таких как предпочитаемый механизм аутентификации "AUTH=NTLM" или "AUTH=*", и должна использоваться совместно с CURLOPT_USERNAME. Добавлено в cURL 7.34.0. Доступно с PHP 7.0.7.
CURLOPT_PINNEDPUBLICKEY Устанавливает зафиксированный открытый ключ. Строка должны содержать имя файла, в котором лежит ваш зафиксированный открытый ключ. Ожидается формат файла "PEM" или "DEX". Строка также может быть числом в формате base64, закодированным sha256 с префиксом "sha256//" и разделенная точкой с запятой ";". Добавлено в cURL 7.39.0. Доступно с PHP 7.0.7.
CURLOPT_POSTFIELDS Все данные, передаваемые в HTTP POST-запросе. Для передачи файла, укажите перед именем файла @, а также используйте полный путь к файлу. Тип файла также может быть указан с помощью формата ';type=mimetype', следующим за именем файла. Этот параметр может быть передан как в качестве url-закодированной строки, наподобие 'para1=val1&para2=val2&...', так и в виде массива, ключами которого будут имена полей, а значениями - их содержимое. Если value является массивом, заголовок Content-Type будет установлен в значение multipart/form-data. Начиная с PHP 5.2.0, при передаче файлов с префиксом @, value должен быть массивом. С PHP 5.5.0 префикс @ устарел и файлы можно отправлять с помощью CURLFile. Префикс @ можно отключить, чтобы можно было передавать значения, начинающиеся с @, задав опцию CURLOPT_SAFE_UPLOAD в значение TRUE.
CURLOPT_PRIVATE Любые данные, которые должны связаны с этим дескриптором cURL. Эти данные могут быть выбраны подзапросом опции CURLINFO_PRIVATE функции curl_getinfo(). cURL ничего не делает с этими данными. Если используется множество дескрипторов cURL, эти данные обычно используются как уникальный ключ для определения дескриптора cURL. Добавлено в cURL 7.10.3.
CURLOPT_PROXY HTTP-прокси, через который будут направляться запросы.
CURLOPT_PROXY_SERVICE_NAME Имя сервиса аутентификации прокси. Добавлено в cURL 7.34.0. Доступно с PHP 7.0.7.
CURLOPT_PROXYUSERPWD Логин и пароль, записанные в виде "[username]:[password]", используемые при соединении через прокси.
CURLOPT_RANDOM_FILE Имя файла, используемого для инициализации генератора случайных чисел для SSL.
CURLOPT_RANGE Диапазон данных, которые нужно загрузить, в формате "X-Y", причем либо X, либо Y могут быть опущены. Протокол HTTP также поддерживает передачу нескольких диапазонов, разделенных запятыми, они задаются в формате "X-Y,N-M".
CURLOPT_REFERER Содержимое заголовка "Referer: ", который будет использован в HTTP-запросе.
CURLOPT_SERVICE_NAME Имя сервиса аутентификации. Добавлено в cURL 7.43.0. доступно с PHP 7.0.7.
CURLOPT_SSH_HOST_PUBLIC_KEY_MD5 Строка, содержащая 32 шестнадцатеричных цифры. Строка должна являться контрольной суммой по алгоритму MD5 открытого ключа удаленного компьютера и libcurl будет сбрасывать соединение к удаленному хосту до тех пор, пока контрольная сумма не будет соответствовать публичному ключу. Эта опция предназначена только для передачи данных с помощью SCP и SFTP. Добавлено в cURL 7.17.1.
CURLOPT_SSH_PUBLIC_KEYFILE Имя файла для вашего публичного ключа. Если не задано, то libcurl использует по умолчанию файл $HOME/.ssh/id_dsa.pub, если переменная окружения HOME установлена и файл "id_dsa.pub" в текущей директории, если переменная HOME не установлена. Добавлено в cURL 7.16.1.
CURLOPT_SSH_PRIVATE_KEYFILE Имя файла для вашего приватного ключа. Если не задано, то libcurl использует по умолчанию файл $HOME/.ssh/id_dsa, если переменная окружения HOME установлена и файл "id_dsa" в текущей директории, если переменная HOME не установлена. Если файл защищен паролем, установите пароль с помощью CURLOPT_KEYPASSWD. Добавлено в cURL 7.16.1.
CURLOPT_SSL_CIPHER_LIST Список шифров, используемый в SSL-передачах. Например, RC4-SHA и TLSv1 являются корректными списками шифров.
CURLOPT_SSLCERT Имя файла с корректно отформатированным PEM-сертификатом.
CURLOPT_SSLCERTPASSWD Пароль, необходимый для использования сертификата CURLOPT_SSLCERT.
CURLOPT_SSLCERTTYPE Формат сертификата. Поддерживаются форматы "PEM" (по умолчанию), "DER" и "ENG". Добавлен в версии cURL 7.9.3.
CURLOPT_SSLENGINE Идентификатор механизма шифрования для закрытого ключа SSL, указанного в параметре CURLOPT_SSLKEY.
CURLOPT_SSLENGINE_DEFAULT Идентификатор механизма шифрования, используемого для ассиметричных операций шифрования.
CURLOPT_SSLKEY Имя файла с закрытым ключом SSL.
CURLOPT_SSLKEYPASSWD

Тайный пароль, необходимый для использования закрытого ключа SSL, указанного параметром CURLOPT_SSLKEY.

Замечание:

Так как этот параметр содержит ценный пароль, помните, что данный PHP-скрипт нужно хранить в безопасном месте.

CURLOPT_SSLKEYTYPE Тип закрытого ключа SSL, указанного в параметре CURLOPT_SSLKEY. Поддерживаются следующие типы ключей: "PEM" (по умолчанию), "DER" и "ENG".
CURLOPT_UNIX_SOCKET_PATH Разрешает использовать доменные сокеты UNIX в качестве конечной точки для соединения и устанавливает путь к ним равным заданной строке (string). Добавлено в cURL 7.40.0. Доступно с PHP 7.0.7.
CURLOPT_URL Загружаемый URL. Данный параметр может быть также установлен при инициализации сеанса с помощью curl_init().
CURLOPT_USERAGENT Содержимое заголовка "User-Agent: ", посылаемого в HTTP-запросе.
CURLOPT_USERNAME Ипя пользователя для аутентификации. Добавлено в cURL 7.19.1. Доступно с PHP 5.5.0.
CURLOPT_USERPWD Логин и пароль, используемые при соединении, указанные в формате "[username]:[password]".
CURLOPT_XOAUTh3_BEARER Задает токен доступа OAuth 2.0. Добавлено в cURL 7.33.0. Доступно с PHP 7.0.7.

konyakov.ru