【发布时间】:2015-02-11 08:22:51
【问题描述】:
我有一个电子商务网站已经运行了几个月,没有更改任何代码(并且运行了几年,只对卡处理路径进行了最小的更改)。我现在遇到一个问题,当第一次打开与信用卡处理器安全服务器的连接时,连接失败。在第二次(或第三次、或第四次等)尝试连接成功。一段时间后(可能是 5 分钟),初始连接将再次失败,随后的连接将成功。
来自信用卡处理器的 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
有一些类似的问题,但我无法解决问题,并且我没有看到任何具有相同错误消息和后续连接尝试在初始失败后成功的症状,例如:
【问题讨论】:
-
你能把类似问题的链接放上去吗?
-
我刚刚添加了一些具有相同错误消息或类似症状的问题的链接。
标签: php ssl curl openssl certificate