У меня есть сайт электронной коммерции, который работает несколько месяцев без изменений кода (и в течение нескольких лет с минимальными изменениями на пути обработки карты). У меня теперь есть проблема, когда при первом открытии соединения с защищенным сервером процессора кредитных карт соединение терпит неудачу. На втором (или третьем, или четвертом и т. Д.) Попытке подключения удастся. Через некоторое время - возможно, 5 минут - первоначальное соединение снова завершится, и последующие соединения будут успешными.Не удалось установить SSL-соединение только при первой попытке
Пример код, который приходит из файла PHP API процессора кредитной карты:
$url = 'https://esplus.moneris.com:443/gateway_us/servlet/MpgRequestArray';
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL,$url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
curl_setopt ($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS,$dataToSend);
curl_setopt($ch,CURLOPT_TIMEOUT,$gArray[CLIENT_TIMEOUT]);
curl_setopt($ch,CURLOPT_USERAGENT,$gArray[API_VERSION]);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, TRUE);
$response=curl_exec ($ch);
if(!$response) {
print curl_error($ch);
print "\n";
print curl_errno($ch);
print "\n";
} else {
print "Success\n";
}
Выход:
% php tester_curl.php
error:140770FC:SSL routines:SSL23_GET_SERVER_HELLO:unknown protocol
35
% php tester_curl.php
Success
% php tester_curl.php
Success
% php tester_curl.php
Success
Есть некоторые подобные вопросы, но я не в состоянии решить эту проблему и я не вижу никаких сообщений с таким же сообщением об ошибке и симптомом последующих попыток подключения после первоначального сбоя, например:
- Unable to establish SSL connection, how do I fix my SSL cert?
- curl errno 35 (Unknown SSL protocol error in connection to [secure site]:443) (то же самое сообщение об ошибке)
- How to fix cURL SSL connection timeout that only happens the first time the script is called (разные тзд ошибка, но SSL соединения не удается с первой попытки, впоследствии успешно)
Можете ли вы поместить ссылки на похожие вопросы? –
Я просто добавил ссылки на некоторые вопросы, у которых было такое же сообщение об ошибке или подобные симптомы. – Raolin