【问题标题】:using CURL and avoiding being redirected to the base url使用 CURL 并避免被重定向到基本 url
【发布时间】:2011-05-20 20:13:46
【问题描述】:

我正在尝试使用 CURL 获取页面的源代码

http://www.deindeal.ch/zurich/?a_aid=dealanzeiger&a_bid=62e0def7

但我唯一得到的是索引站点 (http://www.deindeal.ch),因为我会被自动重定向。我想他们正在避免盗链或类似的东西?在那种情况下,我怎么能得到源代码,也许是一些 curl setopt ?

我的 CURL 连接:

$ch = curl_init();
$timeout = 60;
curl_setopt($ch,CURLOPT_URL,$url);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch,CURLOPT_CONNECTTIMEOUT,$timeout);
curl_setopt($ch, CURLOPT_HTTPGET, false);
curl_setopt($ch, CURLOPT_POST, FALSE);
curl_setopt($ch, CURLOPT_HEADER, true);
curl_setopt($ch, CURLOPT_NOBODY, FALSE);
curl_setopt($ch, CURLOPT_VERBOSE, FALSE);
curl_setopt($ch, CURLOPT_REFERER, "");
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, TRUE);
curl_setopt($ch, CURLOPT_MAXREDIRS, 1);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);

谢谢!

【问题讨论】:

    标签: php redirect curl


    【解决方案1】:

    去掉这个选项:

    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, TRUE);
    

    但是,如果网站正在重定向,他们可能不会输出除重定向之外的任何内容,因此不遵循重定向仍然不会为您提供任何内容,因为他们完全不发送它。

    【讨论】:

    • +1 可能是因为他们设置了一个您没有的会话 cookie。
    猜你喜欢
    • 1970-01-01
    • 2012-11-03
    • 2016-12-16
    • 2017-02-22
    • 2012-12-01
    • 1970-01-01
    • 2016-01-21
    • 2011-11-24
    • 2021-10-06
    相关资源
    最近更新 更多