2017-02-19 69 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

它看起来像这个网站是保护查看其源代码,即使在浏览器中它返回一些小代码,而不是实际的页面源 –

相关问题