curl errno 35 (Неизвестная ошибка протокола SSL в : 443)

Я пытаюсь сделать сообщение на внешний url, используя curl, externa page https, вот откат сервера, который я использую

Сервер Apache / 2.2.11 (Win32) mod_ssl / 2.2.11 OpenSSL / 0.9.8k PHP / 5.3.0

внешний url делает перенаправление на другой URL-адрес, который я отправляю в сообщении, но каждый раз, когда я пытаюсь получить эту ошибку

curl_errno = 35 (Неизвестная ошибка протокола SSL в [secure site]: 443)

поэтому я проверяю firebug для ответа, и он говорит

Не удалось загрузить источник для: http://localhost/3Party/PHP_VPC_3Party_Auth_Capture_Order_DO.php

Вот код, который я использую

 ob_start(); // initialise Client URL object $ch = curl_init(); // set the URL of the VPC curl_setopt ($ch, CURLOPT_URL, $vpcURL); curl_setopt ($ch, CURLOPT_POST, 1); curl_setopt ($ch, CURLOPT_POSTFIELDS, $this->postData); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true); curl_setopt ($ch, CURLOPT_SSL_VERIFYPEER, 0); curl_exec ($ch); if (curl_error($ch)) { $this->errorMessage = "curl_errno=". curl_errno($ch) . " (" . curl_error($ch) . ")"; } curl_close ($ch); 

Я думаю, что проблема заключается в том, что вы пытаетесь получить доступ к URL-адресу «http» (вместо «https») на порту 443.

Вы также можете попробовать установить версию SSL вручную:

 curl_setopt($ch, CURLOPT_SSLVERSION, 3); 

Замените 3 любой версией SSL, которую использует удаленный сервер.

После нескольких недель, связанных с этой проблемой, я смог хотя бы установить соединение, я не знаю, является ли он реальным ответом, но он работает для меня, я просто добавил в пример выше, варианты использования прокси, именно так

 curl_setopt($ch, CURLOPT_HTTPPROXYTUNNEL, 1); curl_setopt($ch, CURLOPT_PROXYAUTH, CURLAUTH_NTLM ); curl_setopt($ch, CURLOPT_PROXY, 'my.proxy'); curl_setopt($ch, CURLOPT_PROXYPORT, 'my.port'); curl_setopt($ch, CURLOPT_PROXYUSERPWD, 'domain\user:password'); 

надеюсь, это поможет

Это может также быть предпочтение версии tls / ssl для сервера. В этом случае вам нужно попробовать указать разные константы версии: https://curl.haxx.se/libcurl/c/CURLOPT_SSLVERSION.html

Например, что сработало для меня:

 curl_setopt($ch, CURLOPT_SSLVERSION, CURL_SSLVERSION_TLSv1_1);