我有一个为付费会员提供服务的网站。 当一个成员订阅时,他去Paypal,支付订阅,然后Paypal调用我的ipn脚本,负责更新数据库并向成员发送消息。 一切都工作正常,但不久前,我开始从Paypal收到一些消息:
"请检查处理PayPal即时付款通知(IPN)的服务器。 发送到以下URL的IPN失败:
http://domain.com/ipnhandler.php
如果您无法识别此网址,则可能是您正在使用的服务提供商 代表您使用IPN。请通过上述方式联系您的服务提供商 信息。如果此问题仍然存在,则可能会为您的帐户停用IPN。"
我发现它很奇怪,因为与此同时,人们继续订阅,数据库每次都更新。所以我发现从Paypal收到一条消息,说URL失败了......怎么会失败,而脚本工作正常呢?!
然后,有一天,数据库停止更新。它开始于12月初,从那时起,人们支付他们的订阅但没有任何反应。我查看了我的Paypal帐户中的ipn历史记录,我可以看到Paypal为每次付款调用了一次脚本(仅一次),但脚本没有返回任何内容(http响应是empptty)。在我身边,我查看了我的日志文件,其中没有任何内容。
在我的ipn脚本中,我要做的第一件事就是在日志文件中记录调用。但自12月以来它已经绝望地空了......
有没有人可以帮我解决这个问题?它非常令人沮丧,因为我必须手动注册eveything ...而且一切都运行良好,所以我不明白为什么它不会随意推卸因为我没有改变任何东西Paypal安装程序中的脚本。
拜托,我真的需要你的帮助!!!
由于
答案 0 :(得分:0)
IPN脚本需要完全加载才能从服务器返回200 OK响应回PayPal。往往会发生的事情是,在其他所有内容运行之后,您可能会在脚本末尾附近发生错误,因此虽然看起来脚本已完成,因为您看到了电子邮件/数据库更新等,但实际上它并未成功完成。
每当我的IPN内容出现问题时,我都会按照guide on testing PayPal IPN中的步骤操作,并且我能够找到问题所在。我建议您按照这些步骤找到问题。