Sto provando a testare un nuovo endpoint del test PayPal: https://tlstest.paypal.com
.URL test TLS PayPal - Errore protocollo PHP curl SSL
Vedere in fondo a questa pagina: TLS 1.2 and HTTP/1.1 Upgrade Microsite (verificare il ...).
Sto utilizzando PHP (5.3.28) e ricciolo (7.30.0 - OpenSSL/0.9.8y - libssh2/1.4.2) su Windows Server 2008 R2 e IIS 7.5:
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'https://tlstest.paypal.com');
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt($ch, CURLOPT_FAILONERROR, true);
curl_setopt($ch, CURLOPT_SSLVERSION, 6); // CURL_SSLVERSION_TLSv1_2
$result = curl_exec($ch);
echo 'result = '.$result.'<br>';
echo 'errno = '.curl_errno($ch).'<br>';
echo 'error = '.curl_error($ch).'<br>';
curl_close($ch);
I 'm questo errore:
35 Unknown SSL protocol error in connection to tlstest.paypal.com:443
ho trovato questo: Github - Unknown SSL protocol error in cui qualcuno dice:
Openssl must be at 1.0.1 or higher for TLS 1.2.
è corretto ..?
Il mio PHP OpenSSL è in versione: OpenSSL/0.9.8y
(da phpinfo()
).
Se avete bisogno di OpenSSL 1.0.1 o superiore per utilizzare TLS 1.2 quindi presumibilmente ogni server che esegue PHP con un minore OpenSSL versione (Sto indovinando che è un sacco!) Non sarà in grado di utilizzare qualsiasi PayPal API o presto l'IPN di PayPal.
Come aggiornare la versione di PHP OpenSSL su Windows ..?
Dopo l'aggiornamento a PHP 5.6, l'handshake SSL è stato completato correttamente senza specificare una versione SSL da solo? E hai aggiornato la tua versione arricciata, o è ancora 7.30? –
Ho lasciato la versione SSL in, quindi non sono sicuro se funziona senza di essa, potrei provarlo presto ... cURL verson ora è 7.36.0, che sembra venire con PHP 5.6.0. –