#php #http #curl #http_заголовки
Всем привет. Допустим, есть сайт site.ru. С помощью данного скрипта я могу получить
лишь сам адрес страницы:
if( $curl = curl_init() ) {
curl_setopt($curl,CURLOPT_URL,'http://site.ru');
curl_setopt($curl,CURLOPT_RETURNTRANSFER,true);
curl_setopt($curl,CURLOPT_NOBODY,true);
curl_setopt($curl,CURLOPT_HEADER,true);
$out = curl_exec($curl);
echo $out;
curl_close($curl);
}
В браузере вижу следующее:
HTTP/1.1 301 Moved Permanently
Date: Sun, 14 May 2017 09:54:15 GMT
Server: Apache/2.4.7 (Ubuntu)
Location: http://site.ru/
Content-Type: text/html; charset=iso-8859-1
Как получить все заголовки, получаемые в инструментах разработчика (F12->Network)?
(Кто знает расширение для хрома Creative Tester - Live HTTP Headers(логотип круга салатового
цвета) - результат нужен примерно такой же, вернее, нужны только ссылки)
Ответы
Ответ 1
Возможно, get_headers():Ответ 2
$raw_headers = ''; curl_setopt($curl, CURLOPT_HEADERFUNCTION, '__write_header'); public function __write_header($curl, $bytes) { $GLOBALS['raw_headers'] .= $bytes; return strlen($bytes); } CURLOPT_HEADERFUNCTION Callback-функция принимает два параметра. Первым параметром является дескриптор cURL, вторым параметром является строка с записываемыми заголовками. Заголовки должны быть записаны с помощью данной callback-функции. Должна возвратить количество записанных байт. описание взято отсюда
Комментариев нет:
Отправить комментарий