使用php curl获得网页内容,相同的代码本地上可以,服务器上不行???-问答-阿里云开发者社区-阿里云

开发者社区> 问答> 正文

使用php curl获得网页内容,相同的代码本地上可以,服务器上不行??? 已解决

相同的代码,在本地上可行,能够获取页面。可是在服务器上却不行,没有输出页面。
具体情况如图:
curl代码部分:
curl_

$url = 'http://nc.anjuke.com/community/';

    $ch = curl_init(); 
    curl_setopt($ch, CURLOPT_URL, $url); 
    curl_setopt($ch, CURLOPT_HEADER, true);        
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); 
    curl_setopt($ch, CURLOPT_TIMEOUT, 200);         
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true); 
    // 针对https的设置
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);
    curl_setopt($ch,CURLOPT_USERAGENT,$_SERVER['HTTP_USER_AGENT']);  //设置客户端浏览器输出

    $ret = curl_exec($ch); 
    $info = curl_getinfo($ch); 
    //$info = curl_getinfo($ch, CURLINFO_HTTP_CODE);
    echo curl_errno($ch); //0 表示无错误
    var_dump($info);        
    echo $ret;     

本地的输出OK 200 下图结果:
_

在服务器上的结果如图:
_

本地上直接是200 OK 啊,怎么到了服务器上就显示302跳转,而且头部的location还是显示404???

真是一脸懵逼,求大神们解惑!!!!

服务器上的curl 的信息如下图:
_curl_

服务器系统、php版本信息:
_php_

展开
收起
青梅煮酒_g 2017-07-19 11:20:49 5486 0
2 条回答
写回答
取消 提交回答
  • 旺旺:nectar2。
    采纳回答

    题主您好,

    请问您的在本地测试时的php版本也是php5.2.17吗?

    2019-07-17 21:24:40
    赞同 展开评论 打赏
  • 在服务器上执行 curl -v http://nc.anjuke.com/community/ 得到的是什么结果呢,有可能是被安居客屏蔽了

    2019-07-17 21:24:40
    赞同 展开评论 打赏
问答分类:
PHP
相关产品:
问答排行榜
最热
最新
相关电子书
更多
PHP 2017.北京 全球开发者大会——高可用的PHP
立即下载
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
相关实验场景
更多