Paypal 没有得到任何贝宝IPN

Paypal 没有得到任何贝宝IPN,paypal,paypal-ipn,Paypal,Paypal Ipn,我试图在我的网站上实现贝宝支付系统。 我在接受IPN方面有点困难。 该网站是在PHP、ZendFramework和Doctrine 1.2.3上开发的 我使用paypal站点上的示例脚本来接收IPN,但是它不起作用。 出于调试目的,我在IPN页面上留下了一段代码,该代码只在mysql数据库的表中插入一个新条目,因此每次加载页面时,都会在数据库中插入一个新条目 我再次尝试使用PayPal的即时支付通知IPN模拟器,并尝试向该页面发送一个新的IPN,但数据库中没有插入任何内容,因此我的最佳猜测是Pa

我试图在我的网站上实现贝宝支付系统。 我在接受IPN方面有点困难。 该网站是在PHP、ZendFramework和Doctrine 1.2.3上开发的

我使用paypal站点上的示例脚本来接收IPN,但是它不起作用。 出于调试目的,我在IPN页面上留下了一段代码,该代码只在mysql数据库的表中插入一个新条目,因此每次加载页面时,都会在数据库中插入一个新条目

我再次尝试使用PayPal的即时支付通知IPN模拟器,并尝试向该页面发送一个新的IPN,但数据库中没有插入任何内容,因此我的最佳猜测是PayPal无法访问我的页面,尽管它说IPN已成功发送

ipn url类似于:

我终于得到了它。 看起来,paypal不会将IPN数据发送到类似以下URL的URL:domain.com/shop/IPN。
我创建了一个单独的php文件,与我使用的框架无关,因此ipn url看起来像:domain.com/ipn.php。现在一切都好了。

我会带着正确的答案回来。 它不起作用的原因不是任何paypal ipn url表单限制。我使用Zend_Translate提供多语言支持,并将访问者浏览器发送给我的内容用作默认语言。问题是,当paypal向我发送ipn时,它没有提供任何默认语言,这导致我的代码中出现异常并导致应用程序崩溃,所以没有收到IPN

此外,如果任何人需要在Zend中拥有自定义URL,他们可以使用Zend_控制器_路由器_路由_正则表达式,更多信息如下:


我们可能需要更多的信息来给你一个好的答案,否则我只会说出可能的错误。无论如何,我会首先检查你是否收到响应,检查你的日志文件,看看你是否收到paypal的post请求,或者是否有错误。此外,在你的沙箱帐户中,你必须确保启用了IPN。你可能已经这样做了,但我只是简单介绍一下,我还认为IPN请求是一个POST请求,而不是GET请求。另外,如果您碰巧使用GoDaddy的共享主机,他们不允许来自第三方服务器的POST请求。IPN位于沙盒帐户中。我刚刚检查了IPN历史记录,那里一切正常,HTTP响应为200。这不是真的。PayPal可以通过PHP发送IPN数据,无需.PHP扩展名。您的web主机可能正在阻止重写URL上的POST数据。尝试向你的.htaccess文件中添加选项-Multiviews。看看我上面检查的答案:用默认语言解决这个问题的任何方法!