2017-10-02 2 views
0

Utilisation du code ci-dessous pour envoyer une requête via TLS v1.0.demande curl via TLS v1.0

$url = "https://example.com"; 
$input_segment = ""; 

$data = array('InputSegments'=>$input_segment, 'cmdSubmit'=>'Submit'); 
$ch = curl_init($url); 
curl_setopt($ch, CURLOPT_POST, true); 
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query($data)); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); 
curl_setopt($ch, CURLOPT_SSL_CIPHER_LIST, 'TLSv1'); 
curl_setopt($ch, CURLOPT_PORT, "443"); 
curl_setopt($ch, CURLOPT_SSLVERSION, 4); 
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); 
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
             'Content-Type: application/x-www-form-urlencoded' 
             )); 
$response = curl_exec($ch); 
$info = curl_getinfo($ch); 
$err_no = curl_errno($ch); 
$err = curl_error($ch); 
curl_close($ch); 
var_dump($response); 

erreur

Error #:SSL read: error:00000000:lib(0):func(0):reason(0), errno 104

Il ressemble à l'aide encore SSL. Comment envoyer une requête curl sur TLSv1.0 en PHP?

+0

LMGTFY: https://github.com/curl/curl/issues/1689 –

+0

essayez d'utiliser le 'CURL_SSLVERSION_TLSv1_0' au lieu de 4 constante. Définissez également CURLOPT_USE_SSL pour forcer l'utilisation du TLS (ou SSL) demandé et échouez dans le cas contraire. – LordNeo

+0

@UnamataSanatarai: La question de serveur signifie du côté de tiers ou quelque chose que je dois réparer de mon côté? –

Répondre

0

à la force TLS 1.0, je pense qu'il est suffisant pour mettre CURLOPT_SSLVERSION à CURL_SSLVERSION_TLSv1_0