随着mpesa B2C集成。我试图用卷曲如何mpesa ssl握手失败
$url = "https://196.201.214.136:18423/mminterface/request";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_HEADER, 1);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_SSLVERSION, CURL_SSLVERSION_TLSv1);
// curl_setopt($ch, CURLOPT_PORT, 18423);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'POST');
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $requestXml);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
'Content-type: text/xml',
'Content-length: ' . strlen($requestXml)
));
$output = curl_exec($ch);
if(curl_errno($ch)){
var_dump(curl_error($ch));
} else{
curl_close($ch);
}
我得到一个错误
error:14094410:SSL routines:SSL3_READ_BYTES:sslv3 alert handshake failure'
这是NSS改变SSL版本OpenSSL的了。 如何解决握手失败。
客户端和服务器无法就SSL/TLS版本或密码套件达成一致。检查服务器支持哪些协议和密码套件以及客户端支持哪些协议和密码套件。 – vcsjones