Depuis de nombreux mois, des demandes répétées ont été formulées par Paypal aux utilisateurs des interfaces fournies pour mettre à jour leurs systèmes avec les versions actuelles ou pour établir des connexions uniquement via les protocoles actuels. En principe, ce n'est pas un problème, car la plupart des systèmes d'exploitation, même ceux qui ont plusieurs années, peuvent le supporter sans problème.
Vous pouvez par exemple tester votre système avec la commande suivante :
php -r '$ch = curl_init() ; curl_setopt($ch, CURLOPT_URL, "https://tlstest.paypal.com/") ; var_dump(curl_exec($ch)) ; var_dump(curl_error($ch)) ;".
La valeur de retour est soit
PayPal_Connection_OKbool(true)
string(0) "
ou si cela ne fonctionne pas :
bool(faux)
string(17) "Erreur de connexion SSL".
Cette dernière erreur se produit, par exemple, sous Redhat/Centos6.
En principe, la connexion avec Redhat6 fonctionne également sous tls 1.2 mais malheureusement le programme utilisé "curl" ne négocie pas automatiquement cette connexion avec tls1.2. Ce bug a été mis à jour par Redhat en mai et sera également disponible pour Centos6 prochainement. En tant qu'opérateur de serveur web, vous devez donc mettre à jour tous les paquets à la dernière version et surtout utiliser curl à partir de la version 7.19.7-52. Redhat
D'ici là, vous devrez demander à curl d'utiliser la version actuelle, par exemple avec :
php -r '$ch = curl_init() ; curl_setopt($ch, CURLOPT_SSLVERSION, 6) ; curl_setopt($ch, CURLOPT_URL, "https://tlstest.paypal.com/") ; var_dump(curl_exec($ch)) ; var_dump(curl_error($ch));'.
Mais pas besoin de paniquer. En raison de la paresse de mise à jour de la plupart des utilisateurs, Paypal a prolongé d'un an, jusqu'au 30 juin 2017, le délai pour changer les protocoles ou désactiver les anciens protocoles.