将 curl-command 转换为 php
Convert curl-command to php curl
我正在尝试将具有身份验证 header 的 curl-statement 转换为 php curl 请求。
但它似乎不起作用,因为我收到以下错误 echo 'error:' . curl_error($ch);
:
error:SSL certificate problem: unable to get local issuer certificate
我的 curl-command 看起来像这样:
curl --user XXXX:YYYY "URL"
我的 php-curl 看起来像这样:
$login = 'XXXX';
$password = 'YYYY';
$url = 'URL';
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch, CURLOPT_HEADER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_BASIC);
curl_setopt($ch, CURLOPT_USERPWD, "$login:$password");
echo curl_exec($ch);
$result = curl_exec($ch);
if ($result != false){
echo "SUCCESS";
}else{
echo "<br>";
echo 'error:' . curl_error($ch);
echo "<br>";
}
curl_close($ch);
echo($result);
有人看出我的错了吗?
cURL 无法验证正在使用的证书的真实性,因为在本地数据库中找不到签名机构的证书。
这可能是正在使用自签名证书的症状。
您应该做的是将签名机构的证书添加到/etc/ssl/certs/ca-certificates.crt
。
您可以使用 curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
,这将禁用失败的检查。
你真的应该使用第一个选项。
我正在尝试将具有身份验证 header 的 curl-statement 转换为 php curl 请求。
但它似乎不起作用,因为我收到以下错误 echo 'error:' . curl_error($ch);
:
error:SSL certificate problem: unable to get local issuer certificate
我的 curl-command 看起来像这样:
curl --user XXXX:YYYY "URL"
我的 php-curl 看起来像这样:
$login = 'XXXX';
$password = 'YYYY';
$url = 'URL';
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch, CURLOPT_HEADER, true);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_BASIC);
curl_setopt($ch, CURLOPT_USERPWD, "$login:$password");
echo curl_exec($ch);
$result = curl_exec($ch);
if ($result != false){
echo "SUCCESS";
}else{
echo "<br>";
echo 'error:' . curl_error($ch);
echo "<br>";
}
curl_close($ch);
echo($result);
有人看出我的错了吗?
cURL 无法验证正在使用的证书的真实性,因为在本地数据库中找不到签名机构的证书。
这可能是正在使用自签名证书的症状。
您应该做的是将签名机构的证书添加到/etc/ssl/certs/ca-certificates.crt
。
您可以使用 curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
,这将禁用失败的检查。
你真的应该使用第一个选项。