偶尔有用户会向模板兔反馈说通过erphpdown插件使用支付宝当面付接口,支付后网站却没有到账也没有订单。这里我们给出几点可能的原因供大家排查:
1、网站服务器/主机有防火墙。比如你使用的是宝塔面板,然后安装了防火墙软件,那么防火墙可能会把支付宝的回调通知给拦截,可以通过添加支付宝官方回调通知的IP白名单
2、域名解析套了CDN,那么你需要在CDN那边也添加上面的白名单
3、服务器/主机本身自带防火墙,比如有些国外的主机例如siteground等是自带了防火墙,需要在主机面板里关闭或者添加白名单
4、网站装有缓存(页面缓存、数据库缓存)、安全插件,可以尝试停用试试
5、支付宝开放平台里的接口获取处设置了授权回调地址,但是设置的不对。(注意,下图里的【应用网关】【服务器IP白名单】【接口内容加密方式】【授权回调地址】都不需要设置!)如果你已经设置了授权回调地址,请改为 http://你的域名/wp-content/plugins/erphpdown/payment/f2fpay/notify_url.php
6、插件冲突,可能由于装了都集成了当面付的几个插件导致冲突(概率小)
7、你的域名在支付宝服务器那边解析不稳定导致通知不到(可能域名被劫持污染,如果是这样建议换域名或者做中间域名过度),这个可能会回调成功,但是有延迟。当然,有延迟的话可能是数据库缓存导致。
8、不要用宝塔自动生成的SSL,建议用阿里云、腾讯云的SSL,免费的即可。
3 个评论