Ticketa
Registered
Имам скрипт, който използва cURL, за да влезе в даден сайт и да прочете структурата и данните на даден сайт, но това наскоро спря да работи поради cURL заявки, връщащи 302's грешка и пренасочващи към страница, която връща грешка 404 (пък тя си работи през browser). Ако правя същите действия с браузър, няма пренасочвания, а само 200 OK.
Скрипта го ползвам за СЕО анализ на самите страници (скрипта анализира сайта направен от мен, връща ми данните "сдъвкани с препоръки ако има нещо да се оправя"). Единствено направих промяна в сайта като добавих един редирект за мулти езичност и от там ми се счупи "робота" за Сео анализ.
Проблемния ми скрипт:
Резултата, който ми връща с изк. команда: CURLOPT_FOLLOWLOCATION => false,
Скрипта го ползвам за СЕО анализ на самите страници (скрипта анализира сайта направен от мен, връща ми данните "сдъвкани с препоръки ако има нещо да се оправя"). Единствено направих промяна в сайта като добавих един редирект за мулти езичност и от там ми се счупи "робота" за Сео анализ.
Проблемния ми скрипт:
Код:
<?php
ini_set("display_errors", "1"); error_reporting(E_ALL);
function get_http_response_code($url, $timeout = 10) {
$curl = curl_init();
$options = [
CURLOPT_URL => $url,
CURLOPT_HEADER => 1,
CURLOPT_RETURNTRANSFER => 1,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_USERAGENT => 'Mozilla/5.0 (Windows NT 6.2; WOW64; rv:17.0) Gecko/20100101 Firefox/17.0',
CURLOPT_REFERER => 'https://google.com/',
CURLOPT_AUTOREFERER => false,
CURLOPT_TIMEOUT => $timeout,
];
curl_setopt_array($curl, $options);
$data = curl_exec($curl);
$headers = curl_getinfo($curl);
curl_close($curl);
return ( empty($headers['http_code']) || $headers['http_code'] != 200 ) ? false : true;
}
$url_encode = "https://saita.com";
if ( ! get_http_response_code( $url_encode ) ) {
echo "Страницата не бе намерена";
}
Резултата, който ми връща с изк. команда: CURLOPT_FOLLOWLOCATION => false,
Array
(
=> https://saita.com/ [content...T_URI'], 1) ); exit; } break; }[/code]