Magento 在某个服务器上发生了一个无法解决的奇怪的Google签出问题

Magento 在某个服务器上发生了一个无法解决的奇怪的Google签出问题,magento,google-checkout,Magento,Google Checkout,我有一个网站运行在Hostgator共享托管帐户中,Google Checkout(GC)从1.2版开始工作——当该网站第一次上线时,GC开箱即用 最近我将站点移动到VPS服务器,GC停止处理此错误: Google签出:来自Google签出服务器的响应无效 我认为Magento的Google Checkout集成不会有问题,但新的VPS服务器或SSL证书需要进一步测试,因此我将站点移回共享服务器(GC重新开始工作!),然后使用有效的SSL证书(一个正常工作的GC帐户)设置测试站点 3周过去了,G

我有一个网站运行在Hostgator共享托管帐户中,Google Checkout(GC)从1.2版开始工作——当该网站第一次上线时,GC开箱即用

最近我将站点移动到VPS服务器,GC停止处理此错误: Google签出:来自Google签出服务器的响应无效

我认为Magento的Google Checkout集成不会有问题,但新的VPS服务器或SSL证书需要进一步测试,因此我将站点移回共享服务器(GC重新开始工作!),然后使用有效的SSL证书(一个正常工作的GC帐户)设置测试站点

3周过去了,GC仍然无法在VPS服务器上工作;在Hostgator的支持下,我尝试/搜索/测试了所有可能性,我们已经用尽了所有选项,我们认为这与SSL证书设置或服务器配置无关

根据上面的错误和“var/log/payment\u googlecheckout”中的日志,我认为它无法重定向到checkout.google.com/schema/2

<order-processing-support>
<request-initial-auth-details>true</request-initial-auth-details>
</order-processing-support>
</checkout-shopping-cart>
[dir] => out

真的
[dir]=>输出
似乎很多人以前都经历过同样的错误,但似乎没有人能够找到原因,我开始认为这是Magento的Google Checkout模块上的一个错误

如果您以前有过此问题并已解决,请与我们分享。谢谢

似乎也有类似的问题,这是由于他们的cURL安装出现了问题。您是否将共享主机的版本与VPS进行了比较?我会比较:PHP版本、PHP扩展版本、
PHP.ini
settings和cURL本身的版本

如果这些都没有产生任何结果,请打开
app/code/core/Mage/GoogleCheckout/Model/Api/Xml/Abstract.php
,并修改
\u call()
方法如下:

// app/code/core/Mage/GoogleCheckout/Model/Api/Xml/Abstract.php

public function _call($xml)
{
    // ... snip ...
    $result = @simplexml_load_string($response);
    if (!$result) {
        // Add this...
        Mage::log(var_export($response, true), null, 'google_checkout_debug.log', true);
        // ... end
        $result = simplexml_load_string('<error><error-message>Invalid response from Google Checkout server</error-message></error>');
    }
//app/code/core/Mage/GoogleCheckout/Model/Api/Xml/Abstract.php
公共函数调用($xml)
{
//…剪断。。。
$result=@simplexml\u load\u string($response);
如果(!$result){
//加上这个。。。
日志(var_export($response,true),null,'google_checkout_debug.log',true);
//……结束
$result=simplexml_load_字符串(“来自Google签出服务器的无效响应”);
}
这样,您就可以将Google的准确响应记录到
var/log/Google\u checkout\u debug.log
。使用它来调试可能出现的错误(可能在响应中嵌入了另一条错误消息)


完成后请记住删除代码!

该网站现在运行的是哪个版本的Magento?如果您在此处发布问题,这个问题肯定不是无法解决的…;)它在v1.6.2上运行。从未出现过每个版本更新的问题。谢谢!我会尽快尝试并让您知道结果。更新:debug消息显示:2012-03-13T00:41:55+00:00调试(7):“”我还应该提到,我的GC帐户>集成控制台中没有错误日志文件。看起来GC服务器只是拒绝Magento请求的连接。“cURL安装”这确实是原因。我一把这条信息发送给我的网络主机,他们就能够立即修复。我想这并不是无法解决的;)是的:)应该在错误发生时立即发布我的问题。GC支持和网络主机之间有一点相互指责,当不同的支持人员询问时,他们感到非常沮丧我几乎在每封电子邮件中都要重复同样的问题,但总的来说,我的网络主机正在尽力帮助我。我不能责怪他们没有捕捉到这一点,因为服务器中没有记录详细日志,也没有Magento/var/log。我想知道Magento GC模块是否能够更好地捕捉错误,例如提供更具描述性的详细信息。