public function getPage($url){
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HEADER, 1); // заголовк получаем тоже
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); // если не 0 возвращает результат а не выводит его в браузер
curl_setopt ($ch , CURLOPT_USERAGENT , "Mozilla/5.0 (Windows; U; Windows NT 5.1; ru-RU; rv:1.7.12) Gecko/20050919 Firefox/1.0.7"); // каким браузером будем прикидываться
//curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); //переход при редиректе
//curl_setopt($ch, CURLOPT_MAXREDIRS, 3); //макс количество переходов при редиректе
$data = curl_exec($ch);
$response_code = curl_getinfo($ch,CURLINFO_HTTP_CODE);
curl_close($ch);
////////////////////////////////
if(!$response_code){
$this->logMessage('Не удалось получить страницу '.$url.' код оширбки '.$response_code);
return false;
}
if($response_code == '301' || $response_code == '302'){
preg_match('/Location:(.*?)\n/', $data, $matches);
$newurl = trim(array_pop($matches));
//curl_close ($ch);
$this->logMessage('перенаправление '.$url.' с кодом ошибки '.$response_code.' на '.$newurl);
$data = $this->getPage($newurl);
}