我在一个受简单HTTP身份验证保护的开发环境中测试该环境。我不想在没有身份验证的情况下公开环境。Paypal/Paypal-sandbox是否可以通过简单的HTTP认证向我的开发服务器发送IPN,例如https://username:password@mydomain.com/ipn?谢谢。
发布于 2012-09-23 01:21:39
尽管Paypal允许你将IPN URL设置为类似https://username:password@mydomain.com/ipn的内容,但它似乎不会发送用户名和密码。
在我的IPN历史记录中,所有请求都一直被标记为失败,直到我删除了服务器上的身份验证。请注意,您也可以创建一个.htaccess文件,让来自贝宝的请求进入(我还没有这样做,所以我不知道确切的语法,你应该谷歌它)。
发布于 2012-05-17 14:44:39
我还开发了一个网站,接受贝宝付款。就像你一样,我也很难弄清楚如何使用IPN以及如何测试它。要设置IPN,请编辑您的按钮,然后转到“高级选项”。在那里,您将找到包含其他变量的文本区。只需复制右侧的2个示例变量(notify_url和(address_overide=1)?)。更改notify_url值,然后保存。
发布于 2017-05-25 20:59:39
至于现在,这是不可能的,但如果你正在询问真实世界的情况,通常你有代理服务器在前面/作为你的web服务器,它处理简单的HTTP身份验证,你可以为你的paypal IPN urls设置排除规则。例如,如果使用nginx指令,则如下所示:
server {
listen 80;
server_name example.com;
location /paypal/ipn {
try_files $uri @proxy_to_app;
}
location / {
auth_basic "Restricted";
auth_basic_user_file /example/.htpasswd;
try_files $uri @proxy_to_app;
}
location @proxy_to_app {
if (!-f $request_filename) {
proxy_pass http://localhost;
break;
}
}}https://stackoverflow.com/questions/10478293
复制相似问题