1

我正在尝试设置 Django-Paypal 并已从 PayPal 获得回报。长话短说,在我的 Apache 访问日志中,每当我通过 PayPal 处理付款(并且 PayPal 将结果发送回我的服务器)时,我都会得到以下信息:

173.0.82.126 - - [27/Oct/2012:16:42:52 +0200] "POST /my/super/secret/notify/url/ HTTP/1.0" 401 787 "-" "-"

通知视图确实具有@csrf_exempt解决此错误的目的,但它仍然不起作用。

如果有人能告诉我如何解决这个问题(这显然是权限/授权问题),我将不胜感激!

PS:我尝试添加WSGIPassAuthorization到我的 apache 配置文件中,这也没有帮助。

4

2 回答 2

6

事实证明,我当时非常昏暗......我们在服务器上进行了基本身份验证,以防止在启动之前窥探,所以当然 PayPal 被 401 拒绝......

所以答案当然是在测试 IPN 时删除基本身份验证 - 一切都清楚!

令人惊讶的是,从某事中退后一点会揭示出最明显(也是最简单)的错误。

于 2012-10-28T10:59:37.310 回答
2

我刚刚遇到了同样的问题,但通过在虚拟主机中添加一些“允许来自”规则来保持基本身份验证:

Allow from 173.0.82.77
Allow from 173.0.82.126
Allow from 173.0.82.78
Satisfy Any

贝宝沙盒 IP 地址

于 2014-07-12T10:27:52.023 回答