[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Помогите разобраться с заголовком ответа
Altai
Здравствуйте! Пытаюсь написать парсер админки wordpress с помощью библиотеки Curl. Столкнулся с проблемой - при получении страницы авторизации, происходит вечный редирект на эту страницу и получаю такой заголовок:


HTTP/1.1 200 OK Server: nginx Date: Sun, 15 Feb 2015 13:25:21 GMT Content-Type: text/html Transfer-Encoding: chunked Connection: keep-alive Keep-Alive: timeout=5 Set-Cookie: uid_zxcv=bc5dd41554e09e41b34c7ca50747e502; expires=Thu, 31-Dec-37 23:55:55 GMT; path=/ Content-Encoding: gzip


При абсолютно таком же действии на другом сайте, всё происходит нормально и приходит другой заголовок:


HTTP/1.1 200 OK Server: nginx/1.2.1 Date: Sun, 15 Feb 2015 13:23:48 GMT Content-Type: text/html; charset=UTF-8 Content-Length: 1330 Connection: keep-alive X-Powered-By: PHP/5.4.4-14+deb7u14 Expires: Wed, 11 Jan 1984 05:00:00 GMT Cache-Control: no-cache, must-revalidate, max-age=0 Pragma: no-cache Set-Cookie: wordpress_test_cookie=WP+Cookie+check; path=/ X-Frame-Options: SAMEORIGIN Vary: Accept-Encoding Content-Encoding: gzip


Т.к. заголовки отличаются, я предположил что причину ошибки можно найти в них, но не пойму, как её найти. Кто в этом разбирается - можете помочь?

p.s. Для получения страницы использую такой код Curl

function get_web_page($url){
$uagent = 'Mozilla/5.0 (Windows NT 6.1; rv:35.0) Gecko/20100101 Firefox/35.0';

$ch = curl_init( $url );

curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); // возвращает веб-страницу
curl_setopt($ch, CURLOPT_HEADER, 1); // возвращает заголовки
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 0); // переходит по редиректам
curl_setopt($ch, CURLOPT_ENCODING, ""); // обрабатывает все кодировки
curl_setopt($ch, CURLOPT_USERAGENT, $uagent); // useragent
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 120); // таймаут соединения
curl_setopt($ch, CURLOPT_TIMEOUT, 120); // таймаут ответа
curl_setopt($ch, CURLOPT_MAXREDIRS, 10); // останавливаться после 10-ого редиректа
$content = curl_exec( $ch );
$err = curl_errno( $ch );
$errmsg = curl_error( $ch );
$header = curl_getinfo( $ch );
curl_close( $ch );

$header['errno'] = $err;
$header['errmsg'] = $errmsg;
$header['content'] = $content;
return $header['content'];
}

echo get_web_page('http://www.cifrapro.ru/wp-login.php');
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.