我的PHP脚本一直工作到昨天。
这是我的代码:
$curl = curl_init($url);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl,CURLOPT_FOLLOWLOCATION,true);
curl_setopt($curl, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US) AppleWebKit/534.10 (KHTML, like Gecko) Chrome/8.0.552.224 Safari/534.10');
$html = curl_exec($curl);
curl_close($curl);
if (!$html) {
die("something's wrong!");
}
现在我看到了something's wrong! message
。
网址正在运行,因为我可以在浏览器中加载页面,
如果我从终端尝试curl www....
我收到0HTTP/1.1 301 Moved Permanently
响应,但我已指定了FOLLOWLOCATION标志。
如何调试?我错过了什么?
答案 0 :(得分:0)
试试这个:
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_TIMEOUT, 30);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
$html = curl_exec($ch);
curl_close($ch);
马丁
答案 1 :(得分:0)
使用详细模式跟踪呼叫。
curl_setopt($curl,CURLOPT_VERBOSE,true);
网站可能会返回301状态,但不会向Location:
响应提供任何链接,并使用Javascript或Meta刷新进行重定向。