Voglio convalidare il mio certificato SSL ogni volta che eseguo chiamate API. Ho seguito questa guida:
Questo è il mio codice:
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "https://api-3t.sandbox.paypal.com/nvp");
curl_setopt($ch, CURLOPT_POSTFIELDS, ($apiCredentials . $nvpStr));
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); //Returnerar resultatet istället för att skriva ut det
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, true);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 2);
curl_setopt($ch, curlopt_cainfo, (dirname(__FILE__) . '/cacert.pem'));
$response = curl_exec($ch);
Il problema è che il mio certificato SSL non è stato convalidato affatto - sembra che il file cacert.pem non sia nemmeno controllato! Ho cambiato il nome del file, l'ho eliminato e ho persino provato a modificarlo rimuovendo tutti i certificati nel file cacert.pem che provengono dall'emittente del certificato. La chiamata API è ancora in esecuzione, non importa cosa!
Quale potrebbe essere il problema?