J'essaye d'appeler (via PHP script) un serveur web distant (SOAP) sur https, il nécessite un certificat protégé par mot de passe. J'utilise nusoap pour faire l'appel, mais je reçois toujours l'erreur suivanteerreur cURL 58 en essayant d'accéder au serveur web de savon
nusoap_client: got erreur wsdl: Obtenir https://ws-t.pitre.tn.it/wcfrouting/wsdl/Documents.wsdl - HTTP: ERREUR cURL: 58: impossible d'utiliser le certificat client (pas de clé trouvée ou mauvaise phrase de passe?)
require_once("../nusoap/lib/nusoap.php");
$pitre_wsdl = "https://ws-t.pitre.tn.it/wcfrouting/wsdl/Documents.wsdl";
$client = new nusoap_client($pitre_wsdl, "wsdl");
$err = $client->getError();
if ($err) {
print("Error");
exit();
}
$client->setCredentials(
"",
"",
"certificate",
array (
"sslcertfile" => "../pitre/cert.p12",
"sslkeyfile" => "../pitre/cert.p12",
"certpassword" => "mypass",
"verifypeer" => FALSE,
"verifyhost" => FALSE
)
);
$result = $client->call(
"GetTemplatesDocuments",
array (
"CodeAdm" => "myCode"
)
);
Avec le navigateur je peux accéder à la wisdl sans problème. J'ai essayé la réponse suivante:
cURL with SSL certificates fails: error 58 unable to set private key file
Je suis le même résultat.
Ai-je raté quelque chose?