php站点ajax请求返回数据异常处理的经历

php站点ajax请求返回数据异常处理的经历,第1张

概述一、问题描述站点运行1年多,突然出现问题,ajax请求数据,正确的数据应该是{isError:false,message:"添加成功"}前面莫名多了一串字符goods_id=385&type=product&goods_num=1&work_id=398239&is_rows=true二、调试过程1.检查控制器的方法是否正确,通过输出调试字符,确定 一、问题描述

站点运行1年多,突然出现问题,AJAX请求数据,正确的数据应该是

{isError: false, message: "添加成功"}

前面莫名多了一串字符

goods_ID=385&type=product&goods_num=1&work_ID=398239&is_rows=true

二、 调试过程

1.检查控制器的方法是否正确,通过输出 调试字符 ,确定异常字符出现的位置

2.发现字符再控制器调用之前输出,检查框架的拦截器或app加载流程,这种比较尴尬了,整个框架没有完整调试log,断点调试导致后面不执行,检查app加载过程中所有问题,无法浮现问题,

通过

get_included_files

查看app所有加载文件,检查文件是否有输出,无结果

通过入口文件添加特定的参数过滤

if($_GET['action'] == 'joinCart'){	echo 5555;}

发现 异常字符不是在 app加载之前 输出的, 基本断定时 PHP进程问题

3.检查 Nginx配置和PHP-pfm配置, 重启两个进程,ok 数据正常了

PHP-pfm的命令
master进程可以理解以下信号

INT, TERM 立刻终止QUIT 平滑终止USR1 重新打开日志文件USR2 平滑重载所有worker进程并重新载入配置和二进制模块

示例:
PHP-fpm 关闭:

kill -INT `cat /usr/local/PHP/var/run/PHP-fpm.pID`

PHP-fpm 重启:

kill -USR2 `cat /usr/local/PHP/var/run/PHP-fpm.pID`

查看PHP-fpm进程数:

ps aux | grep -c PHP-fpm

如果没有PHP-fpm.pID文件,使用进程 pID

kill -USR2 24216
三、知识参考文章

CGI、FastCGI和PHP-FPM关系图解

https://www.awaimai.com/371.HTML

实战Nginx与PHP(FastCGI)的安装、配置与优化

https://www.cnblogs.com/liangxiaofeng/p/5974834.HTML
总结

以上是内存溢出为你收集整理的php站点ajax请求返回数据异常处理经历全部内容,希望文章能够帮你解决php站点ajax请求返回数据异常处理的经历所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1000963.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-21
下一篇 2022-05-21

发表评论

登录后才能评论

评论列表(0条)

保存