卷曲不适用于https

时间:2016-01-19 09:41:10

标签: php curl

我正在尝试在curl中使用https href(URL是https://),但总是抛出错误: 302无法连接到服务器。请稍后再回来。哪里有问题?

                $ch = curl_init();
                $curlConfig = array(
                    CURLOPT_URL => $URL,
                    CURLOPT_POST => true,
                    CURLOPT_RETURNTRANSFER => true,
                    CURLOPT_SSL_VERIFYPEER => false,
                    CURLOPT_SSL_VERIFYHOST => false,
                    CURLOPT_POSTFIELDS => array(
                        ... data ...
                    )
                );
                curl_setopt_array($ch, $curlConfig);
                $result = curl_exec($ch);
                if (!$result) {
                    $http_code = curl_getinfo($ch, CURLINFO_HTTP_CODE);
                    curl_close($ch); // make sure we closeany current curl sessions 
                    die($http_code . ' Unable to connect to server. Please come back later.');
                }
                echo $result;
                curl_close($ch);

3 个答案:

答案 0 :(得分:0)

错误302是重定向错误。附加“无法连接到服务器。请稍后再回来。”是来自您自己的代码的错误陈述。

要使php-curl遵循重定向,请添加

CURLOPT_FOLLOWLOCATION => true,

到curlConfig数组。

答案 1 :(得分:0)

设置像

这样的卷曲选项

curl_setopt($ ch,CURLOPT_RETURNTRANSFER,true); curl_setopt($ ch,CURLOPT_SSL_VERIFYPEER,0);

答案 2 :(得分:0)

将curl选项设置为

  curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);