开发者社区> 问答> 正文

使用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 5711 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
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
如何运维千台以上游戏云服务器 立即下载
网站/服务器取证 实践与挑战 立即下载
ECS计算与存储分离架构实践 立即下载