请教:Nginx + PHP ,在微信支付中v3api SDK,支付成功后,PHP页面无法收到回调参数
但是在access.log里能打印出微信支付请求过来的数据。
Nginx报:
2023/12/26 17:57:53 [info] 6488#0: *268 client 121.51.58.170 closed keepalive connection
2023/12/26 17:57:53 [info] 6488#0: *269 client 121.51.58.170 closed keepalive connection
PHP+Nginx无法收到微信支付回调通知
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
7条回答 默认 最新
weixin_41932391 2024-01-04 17:51关注在access.log里能打印出微信支付请求过来的数据就说明微信已经回调到你的地址了。
你的回调逻辑没有实现就说明你回调接口程序有报错,尝试自己打印文本日志。
程序每一步输出文档日志来确定走到哪一步了,是哪一步程序有问题。用这种方式来自查程序问题
使用我提供的一个封装好的输出文本日志方法试试,日志目录自己按实际情况修改,给目录写入权限function write_log($group, $file, $message, $output, $write = false, $debug = false){ $logDir = dirname(dirname(__FILE__)).'/logs/'; $timestamp = time(); $time = date("Y-m-d H:i:s", $timestamp); $date = date("Ymd", $timestamp); if (empty($output)) { $logFile = $logDir."debug003_log_".$date.".log"; } else { $logFile = $logDir.$output."_log_".$date.".log"; } $logContent = "{$time} [$group] 发生在文件:{$file} 消息:{$message}".chr(10).chr(13); $chkres = $write || $debug; if ($chkres){ //wite_text($logContent, $logFile); $fp = fopen($logFile, 'a') or die('Unable to open file: '.$logFile); fwrite($fp, $logContent); fclose($fp); } if (isset($_REQUEST['sdkdebug']) && !empty($_REQUEST['sdkdebug'])){ echo $logContent; } }调用方法:
write_log('INFO', 'Base.php', '输出内容', 'pay_log', true);本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报 编辑记录