【问题标题】:PHP curl fetch doesn't see redirectsPHP curl fetch 看不到重定向
【发布时间】:2015-08-22 12:05:23
【问题描述】:

我想模拟this 工具的行为,我正在使用以下代码:

header('Access-Control-Allow-Origin: *');
header('Access-Control-Allow-Methods: GET, POST');
if(isset($_GET['get'])) {
    $curl = curl_init();
    curl_setopt_array($curl, array(
        CURLOPT_URL => $_GET['get']
    ));
    curl_exec($curl);
}

通常,它会从 GET 参数“get”中指定的 url 获取 HTML/data/whatever。不幸的是,如果我将它发送到一个页面,然后重定向到另一个页面,它什么也没有返回给我。例如https://www.mediawiki.org/ 重定向到https://www.mediawiki.org/wiki/MediaWiki;放入前一个网址不会返回任何内容,但放入后一个网址有效。如何让它看到重定向并从后续页面获取数据?不知何故,anyorigin 可以做到。

【问题讨论】:

  • 确实阅读了 phps Curl 扩展的文档,不是吗?因为那里已经回答了。
  • 是吗?傻我。让我看看……
  • 检查这里:php.net/manual/en/function.curl-setopt.php 并寻找 CURLOPT_FOLLOWLOCATION...
  • @arkascha 我只是在我发布答案后才注意到你的评论,那里没有复制。
  • @Dedee 这样的事情发生了。您可以将获得的积分转入我的银行帐户。等等,我在某处有电话号码...

标签: php redirect curl


【解决方案1】:

对于 PHP 中的 cURL,您必须指定一个选项,如下所示

curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true);

【讨论】:

    猜你喜欢
    • 2017-03-02
    • 1970-01-01
    • 1970-01-01
    • 2013-02-02
    • 1970-01-01
    • 2012-05-04
    • 2015-07-30
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多