2017-02-19 66 views
1

我是新來的curl和一般的php,目前我正在嘗試獲取頁面源代碼,所以稍後可以使用它。curl請求將我重定向到本地主頁

這是我的全部代碼

$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

當然,如已經建議的那樣查看控制檯的輸出,或者如果您堅持在瀏覽器中執行,請發送一個「文本/純文本」內容類型標題以及來自PHP的響應。 – Sherif

+0

它看起來像這個網站是保護查看其源代碼,即使在瀏覽器中它返回一些小代碼,而不是實際的頁面源 –

相關問題