Paypal 沙盒 IPN 模拟器 - 502 Bad Gateway
Posted
技术标签:
【中文标题】Paypal 沙盒 IPN 模拟器 - 502 Bad Gateway【英文标题】:Paypal sandbox IPN simulator - 502 Bad Gateway 【发布时间】:2015-08-28 21:35:28 【问题描述】:我刚刚完成了支持 Paypal 的支付网关服务器的实现。该网关还具有用于 Paypal 和 Skrill 通知的自适应 IPN 服务器。在实现和测试过程中,我使用了 Paypal 的IPN manual 提供的文档。在测试期间,一切都“一切顺利”。我用文档给出的例子来测试它,“All Okay”:
mc_gross=19.95&protection_eligibility=Eligible&address_status=confirmed&payer_id=LPLWNMTBWMFAY&tax=0.00&address_street=1+Main+St&payment_date=20%3A12%3A59+Jan+13%2C+2009+PST&payment_status=Completed&charset=windows-1252&address_zip=95131&first_name=Test&mc_fee=0.88&address_country_code=US&address_name=Test+User¬ify_version=2.6&custom=&payer_status=verified&address_country=United+States&address_city=San+Jose&quantity=1&verify_sign=AtkOfCXbDm2hu0ZELryHFjY-Vb7PAUvS6nMXgysbElEn9v-1XcmSoGtf&payer_email=gpmac_1231902590_per%40paypal.com&txn_id=61E67681CH3238416&payment_type=instant&last_name=User&address_state=CA&receiver_email=gpmac_1231902686_biz%40paypal.com&payment_fee=0.88&receiver_id=S8XGHLYDW9T3S&txn_type=express_checkout&item_name=&mc_currency=USD&item_number=&residence_country=US&test_ipn=1&handling_amount=0.00&transaction_subject=&payment_gross=19.95&shipping=0.00
问题开始于我们将网关部署到生产服务器,并使用 Paypal 的IPN Simulator 提供的模拟表格进行测试。好吧,当我点击Send IPN
按钮时,消息没有到达我的服务器,几秒钟后(更像是几分钟),出现了 HTTP 错误状态响应:
是的502 错误网关!那是什么呀?!?消息甚至没有到达服务器。需要注意的是,我们没有使用标准的 80/443 端口,我们只支持“POST”消息。 IPN 消息再次没有进入我们的服务器,我们使用其他测试工具对其进行测试,消息成功到达。
请帮忙!
>> 顺便说一下,我们正在使用 Express Checkout!
【问题讨论】:
你解决了这个问题吗?我收到了同样的错误信息。 刚刚遇到同样的问题,我的解决方案就是这里的答案:***.com/questions/11609174/… 【参考方案1】:您应该避免将主机放在标题中。更改此内容:
$header = "POST /cgi-bin/webscr HTTP/1.1\r\n";
$header .= "Host: www.paypal.com\r\n"; *****DELETE THIS LINE*****
$header .= "Content-Type: application/x-www-form-urlencoded\r\n";
$header .= "Content-Length: " . strlen($req) . "\r\n\r\n";
为此:
$header = "POST /cgi-bin/webscr HTTP/1.1\r\n";
$header .= "Content-Type: application/x-www-form-urlencoded\r\n";
$header .= "Content-Length: " . strlen($req) . "\r\n\r\n";
【讨论】:
嘿 nmos,感谢您的回复,但我认为您没有得到问题。 IPN 模拟器实际上是我们的 IPN 侦听器的请求者。这些是我们对每个服务器请求的响应:Content-Length: 4 Content-Type: text/plain; charset=ISO-8859-1 Connection: keep-alive Date: Sun, 14 Jun 2015 22:46:51 GMT Server: SIGMA-IPN-Server/1.0
以上是关于Paypal 沙盒 IPN 模拟器 - 502 Bad Gateway的主要内容,如果未能解决你的问题,请参考以下文章
Paypal IPN 在沙盒 ipn sinulator 中有效,但在交易中无效