Apache PHP-SSLCURL错误-无法加载客户端证书:-8018(SEC\U错误\U未知\U PKCS11\U错误)

Apache PHP-SSLCURL错误-无法加载客户端证书:-8018(SEC\U错误\U未知\U PKCS11\U错误),apache,ssl-certificate,php-curl,Apache,Ssl Certificate,Php Curl,我正在尝试使用一个RESTAPI,它要求对我的PHP代码进行客户端证书身份验证。 我已将证书转换为.pem、.pfx、.crt、.key和.keystore格式 API还需要使用用户名和密码进行基本身份验证 我已经在服务器上尝试了不同的实现,但是我不断地得到错误 “无法加载客户端证书:-8018(秒错误\u未知\u PKCS11\u错误” 它是一个linux机器RedHat,运行在Apache和PHP上 下面是我目前已经实现的代码片段 $username="aaaaaaaaaaaaaaaaaaa

我正在尝试使用一个RESTAPI,它要求对我的PHP代码进行客户端证书身份验证。 我已将证书转换为.pem、.pfx、.crt、.key和.keystore格式 API还需要使用用户名和密码进行基本身份验证

我已经在服务器上尝试了不同的实现,但是我不断地得到错误 “无法加载客户端证书:-8018(秒错误\u未知\u PKCS11\u错误

它是一个linux机器RedHat,运行在Apache和PHP上

下面是我目前已经实现的代码片段

$username="aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa";
$password="bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb";
$certFile = "/etc/ssl/certs/cert/example.pem";
$certPass = "examplepass";
$keyFile = "/etc/ssl/certs/cert/example.key";
$caFile = "/etc/ssl/certs/cert/example.crt";

$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,'https://www.example.com/some_protected_page');
curl_setopt($ch, CURLOPT_USERPWD, $username . ":" . $password);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_HTTPHEADER,
array(
"Content-type: $content_type", 
));

// The --cert option
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false); 
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
//curl_setopt($ch, CURLOPT_CAINFO, $certFile);
curl_setopt($ch, CURLOPT_SSLCERTTYPE, 'PEM');
curl_setopt($ch, CURLOPT_SSLCERT, $certFile);
curl_setopt($ch, CURLOPT_SSLCERTPASSWD, $certPass);
//curl_setopt($ch, CURLOPT_SSLKEY, $keyFile);
//curl_setopt($ch, CURLOPT_SSLKEYPASSWD, $certPass); 
curl_setopt($ch, CURLOPT_TIMEOUT, 300);

$adata =  curl_exec($ch);