PayPal IPN 失败并找到 302

PayPal IPN Failing with 302 Found

出于某种原因,当我 运行 我的 PayPal IPN 时,没有任何反应。不过,我在错误日志中收到错误,奇怪的是它是一个 302 Found 代码,所以应该没问题,对吧?

我不确定为什么会这样。根据我的研究,应该没问题。

可以在 https://gist.github.com/ConnorMcF/48a85c637ec2317d3fc3 找到代码。 (我认为是中间文件的底部)

谢谢!

在您的 validate_ipn 函数中,您尝试打开到 PayPal 的 HTTP 连接(在端口 80 上):

$fp = fsockopen($url_parsed[host],"80",$err_num,$err_str,30); 

此端口上的服务器设置为仅将您重定向到 HTTPS 站点 -- 因此,您收到“302 已找到”错误的原因。

你应该改用这样的东西:

$fp = fsockopen("tls://".$url_parsed[host],443,$err_num,$err_str,30);