2017-02-19 8 views
1

Я новичок в curl и php в целом, на данный момент я пытаюсь получить источник страницы, поэтому я могу работать с ним позже.curl request перенаправляет меня на localhost страницу

Это весь мой код

$ch = curl_init(); 
$id="3005752358"; 
$url = "https://www.opendota.com/matches/".$id; 
$header[] = "Accept: application/json"; 
$header[] = "Accept-Encoding: gzip"; 
curl_setopt($ch, CURLOPT_URL,$url); 
curl_setopt($ch, CURLOPT_HTTPHEADER, $header); 
curl_setopt($ch,CURLOPT_ENCODING , "gzip"); 
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'GET'); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); 

$response = curl_exec ($ch); 
if ($response === false) 
    $response = curl_error($ch); 
echo stripslashes($response); 
curl_close($ch); 
echo "asd"; 

По какой-то причине, когда я открываю страницу, он перенаправляет меня на этот адрес: локальный

Там в аналогичный вопрос от 4 лет назад, но это выглядит субъект полностью отличается (PHP cURL redirects to localhost)

ответ

1

Поскольку ответ от этого URL содержит JavaScript, который перенаправляет:

<script> 
    window.sessionStorage.redirect = window.location.href; 
</script> 

Как и метатег, который обновляет страницу, указывая на корень сайта.

<meta http-equiv="refresh" content="0;URL='/'"></meta> 

Постарайся глядя на вывод в консоли, в следующий раз после отладки такого рода вещи в браузере только неизбежно приведет к очевидной путанице.

+0

Есть ли способ получить исходный код этой страницы? –

+0

Несомненно, посмотрите на результат с вашей консоли, как уже было предложено, или если вы настаиваете на том, чтобы делать в браузере, отправьте заголовок Content-type 'text/plain' вместе с ответом вашего PHP. – Sherif

+0

Похоже, что этот сайт защищен от просмотра исходного кода, даже в браузере он возвращает небольшой код вместо фактического источника страницы. –