Headers php curl: PHP cURL custom headers — Stack Overflow

Простой запрос HTTP-заголовка Raw CURL, инструмент проверки URL

На этой странице представлен инструмент анализа URL-адреса исходного HTTP-заголовка PHP CURL. Инструмент запрашивает информацию заголовка HTTP для любых URL-адресов. Вы можете проверить, сжата ли какая-либо веб-страница, найдя gzip или deflate в заголовке http. И перенаправления URL-адресов анализируются и разворачиваются. Вы также можете легко использовать API для получения вывода CURL в реальном времени.
Результаты будут кэшироваться и храниться в час .

URL веб-сайта

 ----Найдено в тайнике----
HTTP/2 200
дата: вторник, 07 марта 2023 г., 22:03:54 по Гринвичу
тип содержимого: текст/html; кодировка = UTF-8
ссылка: ; rel="https://api.w.org/"
варьируются: Accept-Encoding, X-Forwarded-Proto
последнее изменение: вторник, 07 марта 2023 г., 21:46:40 GMT
управление кешем: max-age=86400
cf-кэш-статус: HIT
отчет: {"конечные точки":[{"url":"https:\/\/a. nel.cloudflare.com\/report\/v3?s=pUdTY7p2i9bhW4i7IzimQimGDXzLBiAmsJBCWda2dCWiqYFv9ti4GT9eHfcK3vK3JQ5m4RacSQaSi6TZ0DLlci%2Bi2TK%2BWXCsRU6QjJhSl8CJsYAEaGqapk1olZ4b1bBmAf5ejSaLE8IkFA%3D%3D"}","group":"cf-nel","max_age":604800}
nel: {"success_fraction":0,"report_to":"cf-nel","max_age":604800}
строгая транспортная безопасность: max-age=31536000; включать поддомены; предварительная загрузка
x-content-type-options: nosniff
сервер: клаудфлаер
cf-ray: 7a4621917b7d296e-ORD
кодировка содержимого: gzip
alt-svc: h4 = ": 443"; ma=86400, h4-29=":443"; ма=86400 

API (интерфейс прикладного программирования)

Следующий API имеет ограничение скорости 1 вызов в секунду.

 https://uploadbeta.com/api/curl/?cached&url=https://helloacm.com
 

Он вернет данные в формате JSON:

 "HTTP\/1.1 200 OK\r\nДата: пятница, 26 июня 2015 г., 09:27:17 по Гринвичу\r\nСервер: Apache\/2.4.7 (Ubuntu)\r\nX-Powered-By: PHP\ /5. 5.9-1ubuntu4.5\r\nX-Pingback: https://\/helloacm.com\/xmlrpc.php\r\nContent-Encoding: gzip\r\nVary: Accept-Encoding\r\nContent- Тип: text\/html; charset=UTF-8\r\n\r\n"
 

Вы также можете передать параметр «url» методом POST. Например:

 curl -s -X POST "https://helloacm.com/api/curl/" -d "url=https://www.google.com"
 

Пример возврата:

 "HTTP\/2 200\r\nдата: понедельник, 19 ноября 2018 г. 20:46:50 по Гринвичу\r\nистечение: -1\r\ncache-control: private, max-age=0\r\ncontent- type: text\/html; charset=ISO-8859-1\r\np3p: CP=\"Это не политика P3P! Для получения дополнительной информации см. g.co\/p3phelp.\"\r\ncontent-encoding: gzip\r\nserver: gws\r\nx-xss-protection: 1; mode=block\r\nx-frame-options: SAMEORIGIN\r\nset-cookie: 1P_JAR=2018-11-19-20; expires=ср, 19 декабря 2018 г., 20:46:50 по Гринвичу; путь=\/; domain=.google.com\r\nset-cookie: NID=146=M_QjE1WYkytFkYEpn80JmrKfGN8CtYhPnQ7ngGAILj9Tqs9tOZ2B9fmNmZPYivQ4anS6lK6SpMzQAfX2EbTUGGOMZNJvEBa5Zyzuhm_qAw__sDcaRytq9v37_4BlZ6iUSHwFxKTk0om1BkkROtnYFPRckcSFTRmQHaOTMmG55C0; expires = вторник, 21 мая 2019 г. , 20:46:50 по Гринвичу; путь=\/; домен=.google.com; HttpOnly\r\nalt-svc: quic=\":443\"; ма=2592000; v=\"44,43,39,35\"\r\n\r\n"
 

API-серверы Curl

Вы можете использовать один из следующих API-серверов для доступа к CURL API, на который распространяется политика добросовестного использования:

  1. Балансировщик нагрузки: https://api.justyy.workers.dev/api/

Принцип

Мы используем следующую команду curl для запроса заголовка HTTP. Опция -I означает запросить только заголовок, а -H добавляет заголовок для принятия содержимого-кодирования gzip и выкачивания.

 curl -I -H 'Accept-Encoding: gzip,deflate' 'https://helloacm.com' 
 ИМЯ
       curl - передать URL

СИНТАКСИС
       curl [параметры] [URL...]

ОПИСАНИЕ
       curl — это инструмент для передачи данных с сервера или на сервер с использованием одного из
       поддерживаемые протоколы (DICT, FILE, FTP, FTPS, GOPHER, HTTP, HTTPS, IMAP,
       IMAPS, LDAP, LDAPS, POP3, POP3S, RTMP, RTSP, SCP, SFTP, SMTP, SMTPS,
       TELNET и TFTP).  Команда предназначена для работы без участия пользователя.
       действие.

       curl предлагает множество полезных трюков, таких как поддержка прокси, аутентификация пользователя…
       загрузка, FTP-загрузка, HTTP-публикация, SSL-соединения, файлы cookie, передача файлов.
       для резюме, Metalink и многое другое. Как вы увидите ниже, число
       функции заставят вашу голову кружиться!

       curl использует libcurl для всех функций, связанных с переносом. Видеть
       libcurl(3) для подробностей.
 

Пример анализа HTTP-заголовка URL

Google — Forum — Rot47 — UploadBETA

Поделиться: Список многих других онлайн-инструментов

PHP Руководство по параметрам cURL / WhatsMyIP.org

Параметры cURL

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

Для получения дополнительной информации об использовании реализации cURL в PHP см. php.net

Полный исходный список опций PHP cURL см. в функции curl_setopt() .

Логические параметры

.

.

Флаг командной строки curl_setopt() Описание
-e/—referer «;auto» CURLOPT_AUTOREFERER TRUE для автоматической установки заголовка http referer при переходе по перенаправлению
-j/—нежелательные сеансовые файлы cookie CURLOPT_COOKIESESSION ИСТИНА, чтобы удалить все файлы cookie сеанса, чтобы инициировать новый сеанс
—crlf CURLOPT_CRLF TRUE для преобразования новых строк Unix в новые строки CRLF при передаче
-f/—ошибка CURLOPT_FAILONERROR TRUE для автоматического отказа при ошибках HTTP
-i/—включить* CURLOPT_FILETIME TRUE, чтобы получить дату модификации файла. *-i возвращает полный HTTP-заголовок, включая дату модификации.
-L/—местоположение CURLOPT_FOLLOWLOCATION TRUE для отслеживания любых заголовков Location, отправленных сервером
—disable-eprt CURLOPT_FTP_USE_EPRT TRUE для использования EPRT, FALSE для отключения EPRT
—отключить-epsv CURLOPT_FTP_USE_EPSV TRUE для использования EPSV, FALSE для отключения EPSV
-a/— добавить CURLOPT_FTPAPPEND TRUE для добавления в файл вместо его перезаписи.
-l/—только список CURLOPT_FTPLISTONLY TRUE для отображения только имен каталога FTP
-i/—включить CURLOPT_HEADER TRUE, чтобы включить заголовок в вывод
-G/—получить CURLOPT_HTTPGET TRUE, чтобы сбросить метод HTTP-запроса на GET
-p/—прокситуннель CURLOPT_HTTPPROXYTUNNEL TRUE для туннелирования через заданный HTTP-прокси
-с/—без звука CURLOPT_MUTE TRUE, чтобы полностью отключить функции cURL
-n/—netrc CURLOPT_NETRC TRUE для сканирования файла ~/. netrc для поиска имени пользователя и пароля для удаленного узла, с которым устанавливается соединение
-I/—головка CURLOPT_NOBODY TRUE, чтобы исключить тело из вывода. Затем для метода запроса устанавливается значение HEAD.
-X/—запрос POST CURLOPT_POST TRUE для выполнения обычного HTTP POST
-T/—upload-file CURLOPT_PUT TRUE для HTTP PUT файла. Файл для PUT должен быть установлен с CURLOPT_INFILE и CURLOPT_INFILESIZE
-k/—небезопасно CURLOPT_SSL_VERIFYPEER FALSE, чтобы запретить cURL проверять сертификат узла
-B/—use-ascii CURLOPT_TRANSFERTEXT TRUE для использования режима ASCII для FTP-передачи
—место-надежный CURLOPT_UNRESTRICTED_AUTH ИСТИНА, чтобы продолжать отправлять имя пользователя и пароль при следующих местах
-v/—подробный CURLOPT_VERBOSE TRUE для вывода подробной информации

Целочисленные опции

.

Флаг командной строки curl_setopt() Описание
—connect-timeout <#> CURLOPT_CONNECTTIMEOUT Количество секунд ожидания при попытке подключения. Используйте 0 для бесконечного ожидания
-0/—http1.0 CURLOPT_HTTP_VERSION Какую версию HTTP использовать, константы: CURL_HTTP_VERSION_NONE, CURL_HTTP_VERSION_1_0, CURL_HTTP_VERSION_1_1
—anyauth
—basic
—digest
—ntlm
—krb <уровень>
CURLOPT_HTTPAUTH Используемые методы аутентификации HTTP: CURLAUTH_BASIC, CURLAUTH_DIGEST, CURLAUTH_GSSNEGOTIATE, CURLAUTH_NTLM, CURLAUTH_ANY, CURLAUTH_ANYSAFE
-Y/—ограничение скорости <скорость> КУРЛОПТ_LOW_SPEED_LIMIT Скорость передачи в байтах в секунду, ниже которой передача должна быть в течение отсчета секунд CURLOPT_LOW_SPEED_TIME, прежде чем PHP сочтет передачу слишком медленной и прервет ее
-y/—скорость-время <время> CURLOPT_LOW_SPEED_TIME Количество секунд, в течение которых скорость передачи должна быть ниже CURLOPT_LOW_SPEED_LIMIT, прежде чем PHP сочтет передачу слишком медленной и прервет ее
—max-redirs <число> CURLOPT_MAXREDIRS Максимальное количество HTTP-перенаправлений для выполнения
—proxy-anyauth
—proxy-basic
—прокси-NTLM
CURLOPT_PROXYAUTH Метод(ы) аутентификации HTTP, которые следует использовать для прокси-соединения
-x/—proxy CURLOPT_PROXYPORT Номер порта прокси для подключения к
-C/—продолжить-в <смещение> CURLOPT_RESUME_FROM Смещение в байтах для возобновления передачи с
-2/—sslv2
-3/—sslv3
CURLOPT_SSLVERSION Версия SSL (2 или 3) для использования
-m/—max-time <секунды> CURLOPT_TIMEOUT Максимальное количество секунд, в течение которого функции cURL могут выполняться
—limit-rate <скорость> CURLOPT_MAX_RECV_SPEED_LARGE
CURLOPT_MAX_SEND_SPEED_LARGE
Если передача превышает эту скорость (в байтах в секунду) в совокупном среднем во время передачи, передача будет приостановлена, чтобы средняя скорость была меньше или равна значению параметра

Опции строки

.

.

.

.

.

Imacros | Все права защищены © 2021
Флаг командной строки curl_setopt() Описание
—cacert <сертификат ЦС> CURLOPT_CAINFO Имя файла, содержащего один или несколько сертификатов для проверки узла с
—capath <каталог сертификата ЦС> CURLOPT_CAPATH Каталог, содержащий несколько сертификатов ЦС
-b/—cookie <имя=данные> CURLOPT_COOKIE Содержимое заголовка «Cookie:» для использования в HTTP-запросе
-b/—cookie <файл> CURLOPT_COOKIEFILE Имя файла, содержащего данные cookie
-c/—cookie-jar <файл> CURLOPT_COOKIEJAR Имя файла для сохранения всех внутренних файлов cookie при закрытии дескриптора
-X/—запрос <команда> CURLOPT_CUSTOMREQUEST Пользовательский метод запроса для использования вместо «GET» или «HEAD» при выполнении HTTP-запроса
—egd-файл <файл> CURLOPT_EGDSOCKET Имя файла для сокета Entropy Gathering Daemon
-H/—header «Accept-Encoding: gzip,deflate» CURLOPT_ENCODING Содержимое заголовка «Accept-Encoding:». Это позволяет декодировать ответ.
-P/—ftp-порт <адрес> CURLOPT_FTPPORT Значение, которое будет использоваться для получения IP-адреса, используемого для инструкции FTP «POST». Инструкция «POST» указывает удаленному серверу подключиться к указанному нами IP-адресу 9.0087
—interface <имя> CURLOPT_INTERFACE Имя используемого исходящего сетевого интерфейса. Это может быть имя интерфейса, IP-адрес или имя хоста
—krb <уровень> CURLOPT_KRB4LEVEL Уровень безопасности Kerberos 4. Любое из следующих значений (в порядке от наименьшего к наибольшему) допустимо: «очистить», «безопасно», «конфиденциально», «лично»
-d/—данные <данные> CURLOPT_POSTFIELDS Полные данные для публикации в операции HTTP «POST». Чтобы опубликовать файл, добавьте к имени файла символ @ и укажите полный путь. Тип файла можно указать явно, указав после имени файла тип в формате ‘;type=mimetype’. Этот параметр может быть передан либо в виде строки с URL-адресом, например «para1=val1&para2=val2&…», либо в виде массива с именем поля в качестве ключа и данными поля в качестве значения. Если значение является массивом, для заголовка Content-Type будет задано значение multipart/form-data. Начиная с PHP 5.2.0, значение должно быть массивом, если файлы передаются в эту опцию с префиксом @.
-x/—proxy CURLOPT_PROXY HTTP-прокси для туннелирования запросов через
-U/—прокси-пользователь <пользователь:пароль> CURLOPT_PROXYUSERPWD Имя пользователя и пароль в формате «[имя пользователя]:[пароль]» для подключения к прокси-серверу
—random-file <файл> CURLOPT_RANDOM_FILE Имя файла, которое будет использоваться для заполнения генератора случайных чисел для SSL
-r/—диапазон <диапазон> КРУПНОЙ_ДИАПАЗОН Диапазон(ы) данных для извлечения в формате «X-Y», где X или Y являются необязательными. Передачи HTTP также поддерживают несколько интервалов, разделенных запятыми в формате «X-Y,N-M»
-e/—referer CURLOPT_REFERER Содержимое заголовка «Referer:» для использования в HTTP-запросе
—ciphers <список шифров> CURLOPT_SSL_CIPHER_LIST Список шифров для SSL. Например, RC4-SHA и TLSv1 являются допустимыми списками шифров
-E/—cert <сертификат[:пароль]> CURLOPT_SSLCERT Имя файла, содержащего сертификат в формате PEM
-E/—cert <сертификат[:пароль]> CURLOPT_SSLCERTPASSWD Пароль, необходимый для использования сертификата CURLOPT_SSLCERT
—cert-type <тип> CURLOPT_SSLCERTTYPE Формат сертификата. Поддерживаемые форматы: «PEM» (по умолчанию), «DER» и «ENG»
—engine <имя> CURLOPT_SSLENGINE Идентификатор криптографического механизма закрытого ключа SSL, указанного в CURLOPT_SSLKEY
—key <ключ> CURLOPT_SSLKEY Имя файла, содержащего закрытый ключ SSL
—pass <фраза> CURLOPT_SSLKEYPASSWD Секретный пароль, необходимый для использования закрытого ключа SSL, указанного в CURLOPT_SSLKEY