Code: Select all
$q = 'https://www.example.org/'; // for example
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $q);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, TRUE);
$json = curl_exec($ch);
Code: Select all
error:14077458:SSL routines:SSL23_GET_SERVER_HELLO:tlsv1 unrecognized name
Ich habe hier https://www.ssllabs.com/ssltest/analyze.html nachgesehen, um die verfügbaren Protokolle für diesen Server zu sehen. Ich habe festgestellt, dass SSL3 und SSL2 nicht verfügbar sind, aber TLS 1.2, TLS 1.1 und TLS 1.0 sind verfügbar. Bei der Suche über Google habe ich festgestellt, dass es am besten ist, keine SSL-Version anzugeben, die tatsächlich automatisch die beste zu verwendende Ebene aushandelt. Ich habe zwar versucht, die TLS-Version in CURLOPT_SSLVERSION festzulegen (wie folgt), aber es tritt der gleiche Fehler auf.
Code: Select all
curl_setopt($ch, CURLOPT_SSLVERSION, CURL_SSLVERSION_TLSv1_2);
Ich habe versucht, alles zu erklären, was ich getan habe, aber fragen Sie bitte jemanden, ob weitere Informationen erforderlich sind. Jede Hilfe wäre sehr dankbar.
Vielen Dank
Mobile version