尽管我设置了curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true)
cURL并不想关注重定向,但它只会显示" 301已移动的页面"。尝试了多个网站。
奇怪的是它适用于localhost,但是当我将它上传到我的网站空间然后拒绝工作。
我的网络托管服务提供商是否有可能进行一些调整,但它无法正常工作?从未见过这样的事情:(
以下是代码:
$ch=curl_init();
curl_setopt($ch, CURLOPT_URL, 'http://google.com');
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_ENCODING, '');
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 10);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.95 Safari/537.36');
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
'Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8',
'Accept-Language: en-US,en;q=0.5',
'Accept-Encoding: gzip, deflate',
'Connection: keep-alive'
));
$result = curl_exec($ch);
curl_close($ch);
答案 0 :(得分:0)
我遇到了类似的问题,原因是cURL
在收到重定向标头后立即执行了GET
。为了解决这个问题,我指定了CURLOPT_CUSTOMREQUEST
示例:
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");