Magento google checkout 集成问题 404
我正在尝试将 google checkout 与 magento 站点集成,并在集成控制台中收到以下错误:
We encountered an error trying to access your server at
https://www.domain.co.uk/googlecheckout/api/
-- the error we got is Sending failed with HTTP response
code: 404. Response body was: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"> <head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"/>
<title>404 - File or directory not found.</title> <style type="text/css">
<!-- body{margin:0;font-size:.7em;font-family:Verdana, Arial, Helvetica, sans-serif;background:#EEEEEE;}
fieldset{padding:0 15px 10px 15px;} h1{font-size:2.4em;margin:0;color:#FFF;}
h2{font-size:1.7em;margin:0;color:#CC0000;}
h3{font-size:1.2em;margin:10px 0 0 0;color:#000000;}
#header{width:96%;margin:0 0 0 0;padding:6px 2% 6px 2%;font-family:"trebuchet MS", Verdana, sans-serif;color:#FFF; background-color:#555555;}
#content{margin:0 0 0 2%;position:relative;}
.content-container{background:#FFF;width:96%;margin-top:8px;padding:10px;position:relative;} -->
</style> </head> <body>
<div id="header"><h1>Server Error</h1></div>
<div id="content"> <div class="content-container"><fieldset> <h2>404 - File or directory not found.</h2>
<h3>The resource you are looking for might have been removed, had its name changed, or is temporarily unavailable.</h3>
</fieldset></div> </div> </body> </html>
据我所知,它实际上不是 404 错误,因为我可以执行以下操作:
wget --post-data=blah https://www.domain.co.uk/googlecheckout/api/
--10:58:43-- https://www.domain.co.uk/googlecheckout/api/
=> `index.html'
Resolving www.domain.co.uk... 192.168.1.117
Connecting to www.domain.co.uk|192.168.1.117|:443... connected.
HTTP request sent, awaiting response... 503 Service Unavailable
10:58:43 ERROR 503: Service Unavailable.
现在 503 错误实际上与我没有使用 wget 发送任何 HTTP_AUTHORIZATION
,因此它在 strpos($_SERVER['HTTP_AUTHORIZATION'], " ") + 1)));
中终止>googleresponse.php。 这不是问题。
我已经尝试了 https:// www.domain.co.uk/googlecheckout/api/ 和 https://www.domain.co.uk/googlecheckout/api/ wget 和 Google Checkout 设置回调网址中的domain.co.uk/googlecheckout/api 具有相同的结果。
我已确保设置了 always_populate_raw_post_data = On
,并且它在 phpinfo()
中正确显示。
我已经在 Magento 中的 Google API 设置中尝试过调试模式打开和关闭。
使用沙盒模式在开发域上签出过程正常工作。
我已经尝试了通过谷歌搜索可以找到的所有内容。任何其他选择将不胜感激。
编辑 该响应看起来像是来自 IIS 服务器。该站点现在运行的服务器是 Apache。 Google 还能访问旧服务器吗? DNS 已于 15 小时前更新。
I'm trying to integrate google checkout with a magento site and get the following error in the Integration Console:
We encountered an error trying to access your server at
https://www.domain.co.uk/googlecheckout/api/
-- the error we got is Sending failed with HTTP response
code: 404. Response body was: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"> <head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"/>
<title>404 - File or directory not found.</title> <style type="text/css">
<!-- body{margin:0;font-size:.7em;font-family:Verdana, Arial, Helvetica, sans-serif;background:#EEEEEE;}
fieldset{padding:0 15px 10px 15px;} h1{font-size:2.4em;margin:0;color:#FFF;}
h2{font-size:1.7em;margin:0;color:#CC0000;}
h3{font-size:1.2em;margin:10px 0 0 0;color:#000000;}
#header{width:96%;margin:0 0 0 0;padding:6px 2% 6px 2%;font-family:"trebuchet MS", Verdana, sans-serif;color:#FFF; background-color:#555555;}
#content{margin:0 0 0 2%;position:relative;}
.content-container{background:#FFF;width:96%;margin-top:8px;padding:10px;position:relative;} -->
</style> </head> <body>
<div id="header"><h1>Server Error</h1></div>
<div id="content"> <div class="content-container"><fieldset> <h2>404 - File or directory not found.</h2>
<h3>The resource you are looking for might have been removed, had its name changed, or is temporarily unavailable.</h3>
</fieldset></div> </div> </body> </html>
As far as I can tell, it's not actually a 404 error as I can do the following:
wget --post-data=blah https://www.domain.co.uk/googlecheckout/api/
--10:58:43-- https://www.domain.co.uk/googlecheckout/api/
=> `index.html'
Resolving www.domain.co.uk... 192.168.1.117
Connecting to www.domain.co.uk|192.168.1.117|:443... connected.
HTTP request sent, awaiting response... 503 Service Unavailable
10:58:43 ERROR 503: Service Unavailable.
Now the 503 error there actually relates to me not sending any HTTP_AUTHORIZATION
with wget, so it dies on this line strpos($_SERVER['HTTP_AUTHORIZATION'], " ") + 1)));
in googleresponse.php
. This isn't the problem.
I have tried both https://www.domain.co.uk/googlecheckout/api/ and https://www.domain.co.uk/googlecheckout/api in both wget and Google Checkout settings callback URL with the same results.
I've made sure that always_populate_raw_post_data = On
is set, and it's showing up correctly in phpinfo()
.
I've tried debug mode On and Off in Google API settings within Magento.
The checkout process was working correctly on a dev domain using the sandbox mode.
I've tried all of the things that I could find with google searches. Any other options would be greatly appreciated.
Edit
It looks like that response is from an IIS server. The server that this site is now running on is Apache. Could Google still be accessing the old server? DNS was updated over 15 hours ago.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
检查新旧服务器上的服务器日志,了解 Google 向哪一台服务器发出了请求。
Check the server logs on the old and new servers to see which one Google made the request to.
来自 google 的原始错误是 IIS 404 页面,而不是 apache 404 页面,因此看起来 google 正在寻找不同的 Web 服务器。
That original error from google is an IIS 404 page, not an apache 404 page, so it seems as though google is looking at a different web server.