Redirect php reffer

Buna seara, nici nu stiu cum sa nu mesc aceasta problema !
O sa descriu un pic .
incerc sa preiau un fisiere de pe hfile.ro , pe un fisier de pe acel site sunt alte 5,6 servere… Daca link-urile catre acele 5,6 servere sunt accesate dupa alt site inafara de hfiles, te trimite la link-ul initial …

Ca de exemplu : http://hfiles.ro/download/pk.rar/1590697 <- pe acest link gasim alte 4 servere
Server 1 : http://hfiles.ro/fisier/redirect/datafilehost/1590697 <- daca link-ul de redirect catre datafilehost este accesat dupa alt site inafara de hfiles.ro el te va trimite la primul link postat mai sus…

Cum fac prin curl sa preia direct link-ul de redirect ?

curl_setopt($ch, CURLOPT_REFERER, 'http://linkul.tau');
1 Like
function doMagic($url)
{
  $curl = curl_init();

  $header[0] = "Accept: text/xml,application/xml,application/xhtml+xml,";
  $header[0] .= "text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5";
  $header[] = "Cache-Control: max-age=0";
  $header[] = "Connection: keep-alive";
  $header[] = "Keep-Alive: 300";
  $header[] = "Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7";
  $header[] = "Accept-Language: en-us,en;q=0.5";
  $header[] = "Pragma: ";

  curl_setopt($curl, CURLOPT_URL, $url);
  curl_setopt($curl, CURLOPT_USERAGENT, "Mozilla/5.0 (Windows NT 6.1; WOW64; rv:7.0.1) Gecko/20100101 Firefox/7.0.12011-10-16 20:23:00");
  curl_setopt($curl, CURLOPT_HTTPHEADER, $header);
  curl_setopt($ch, CURLOPT_REFERER, 'http://hfiles.ro');
  curl_setopt($curl, CURLOPT_ENCODING, "gzip,deflate");
  curl_setopt($curl, CURLOPT_AUTOREFERER, true);
  curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
  curl_setopt($curl, CURLOPT_TIMEOUT, 30);
  curl_setopt($curl, CURLOPT_FOLLOWLOCATION,true);

  $html = curl_exec($curl);
  echo 'Curl error: '. curl_error($curl);
  curl_close($curl);

  return $html;
}

Nu functioneaza, ma trimite la fel pe primul link :frowning:

Pai ai folosit $ch la primul parametru in loc de $curl cum ai tu. Si incearca sa pui la referer url-ul pagini cu cele 4 linkuri, daca nu merge.

Merge, dar imi deschide pagina in fisierul meu test.php … Nu as putea sa imi afiseze doar url-ul spre care ma redirectioneaza ?

Fa un curl_info dupa curl_exec si vezi ce iti da. Poate una din optiuni te ajuta.

Daca nu, pune curl_setopt($curl, CURLOPT_HEADER, true); si parseaza textul primit.

1 Like