libcurl 中不支持或禁用协议“curl https”
Posted
技术标签:
【中文标题】libcurl 中不支持或禁用协议“curl https”【英文标题】:Protocol "curl https" not supported or disabled in libcurl 【发布时间】:2017-09-14 01:04:05 【问题描述】:您好,我正在使用 XAMPP 版本 v3.2.2,并且尝试将 API 与 php CURL Lib 一起使用。但是在每次请求时,我都会收到此错误消息:
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_RETURNTRANSFER => 1,
CURLOPT_URL => 'curl https://dawanda.com/[XYZ]/products?v=1.1',
CURLOPT_HTTPHEADER => array('X-Dawanda-Auth: [XYZ]')
));
$resp = curl_exec($curl);
echo curl_error($curl);
curl_close($curl);
我不明白错误信息,因为 https 协议在 phpinfo() 中列出。
【问题讨论】:
【参考方案1】:去掉 url CURLOPT_URL 中的 'curl' => 'curl https://dawanda.com/[XYZ]/products?v=1.1' 这样
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_RETURNTRANSFER => 1,
CURLOPT_URL => 'https://dawanda.com/[XYZ]/products?v=1.1',
CURLOPT_HTTPHEADER => array('X-Dawanda-Auth: [XYZ]'),
CURLOPT_SSL_VERIFYHOST => false,
CURLOPT_SSL_VERIFYPEER => false
));
$resp = curl_exec($curl);
echo curl_error($curl);
curl_close($curl);
【讨论】:
那么我收到此错误消息:SSL 证书问题:无法获取本地颁发者证书 我已经更新了我的答案并添加了这些行 CURLOPT_SSL_VERIFYHOST, false), CURLOPT_SSL_VERIFYPEER, false)。 您只需要意识到您现在很容易受到 MITM 攻击,因为您不知道与谁交谈。仅出于测试目的,不建议关闭验证。以上是关于libcurl 中不支持或禁用协议“curl https”的主要内容,如果未能解决你的问题,请参考以下文章
libcurl 中不支持或禁用协议“https”-如何检查当前版本的 libcurl [关闭]