我们的电子商务网站已经连续几年没有并且与sagepaye有关联。最近一天或两次我们得到卷曲错误'无法解决主持人'这是卷曲请求。
$logger = Logger::getIntance();
$logger->log($vsppost, Zend_Log::INFO);
set_time_limit( 60 );
$output = array();
$output['Status'] = "FAIL";
$curlsession = curl_init();
curl_setopt( $curlsession, CURLOPT_URL, Config::Get( 'ProtxRegistrationURL' ) );
curl_setopt( $curlsession, CURLOPT_HEADER, 0 );
curl_setopt( $curlsession, CURLOPT_POST, 1 );
curl_setopt( $curlsession, CURLOPT_POSTFIELDS, $vsppost );
curl_setopt( $curlsession, CURLOPT_RETURNTRANSFER, 1 );
curl_setopt( $curlsession, CURLOPT_TIMEOUT, 30 );
curl_setopt( $curlsession, CURLOPT_SSL_VERIFYPEER, FALSE );
curl_setopt( $curlsession, CURLOPT_SSL_VERIFYHOST, 2 );
$rawresponse = curl_exec( $curlsession );
$_SESSION["rawresponse"] = $rawresponse;
$logger->log(str_ireplace(chr(13).chr(10), ', ', $rawresponse), Zend_Log::INFO);
日志记录显示数据良好。事实上,我可以在一小时后看到相同的购买请求并且正在工作。
服务器负载不重,似乎没有连接问题。
有关问题或如何创建测试脚本以查找问题的任何想法。这真的是一个dns查找问题或一些卷曲问题。
答案 0 :(得分:-1)
我目前遇到了同样的问题,到目前为止,它似乎被追溯到与使用ipv6查找执行SagePay服务器查找的本地DNS缓存服务器的某些不兼容。
我有3种方法可以在调查继续进行时缓解这种情况:
1)请求curl仅执行ipv4查找:
curl_setopt( $curlsession, CURLOPT_IPRESOLVE , CURL_IPRESOLVE_V4 );
2)将SagePay主机记录硬编码到/ etc / hosts中 - 根本不是很好/建议,好像他们根本就改变了ip地址,那么这将过时并指向错误的位置。
3)您可以尝试使用其他DNS缓存服务器,例如谷歌DNS服务器似乎没有这个问题(使用它们时没有遇到过这个问题)