2017-07-05 7 views
2

La semaine dernière, le compteur a changé de certificat ssl (avant que tout fonctionnait bien). Maintenant, je reçois une erreur lorsque j'essaie d'obtenir un jeton.Obtenez une erreur dans OAuth: SSL3_GET_SERVER_CERTIFICATE: certificat de vérification

error_reporting(E_ALL); 
ini_set('display_errors', 1); 

$key = 'xxx'; 
$secret = 'xxx'; 
$url = 'https://app.xx.com'; 

try { 
    $oauth = new OAuth($key, $secret); 
    $oauth->enableDebug(); 
    $access_token_info = $oauth->getAccessToken($url. '/oauth/request_token'); 
    if(!empty($access_token_info)) { 
     print_r($access_token_info); 
    } else { 
     print "Failed fetching access token, response was: " . $oauth->getLastResponse(); 
    } 
} catch(OAuthException $E) { 
    echo "Response: ". $E->lastResponse . "\n"; 
} 

Avertissement: OAuth :: getAccessToken(): opération SSL échoué avec le code 1. OpenSSL Messages d'erreur: erreur: 14090086: routines SSL: SSL3_GET_SERVER_CERTIFICATE: certificat verify échoué

Avertissement: OAuth :: getAccessToken(): Echec de l'activation de crypto

J'ai essayé le code sur un second serveur et là ça marche très bien donc on dirait que le problème est de mon côté.

Quel peut être le problème et comment puis-je résoudre ce problème?

+0

@Imo: Merci pour la réponse. Après beaucoup de tests, j'ai trouvé le problème. La contrepartie a oublié d'installer le bon certificat intermédiaire. –

Répondre

0

Le plus probable vous manque un certificat CA d'une nouvelle Autorité de leur nouveau certificat. Cela dépend de votre distribution, mais souvent les autorités de certification approuvées sont placées dans /etc/ssl/certs/. Vérifiez si ce répertoire inclut les mêmes certificats que votre deuxième serveur.