BUG环境介绍
- PHP,TP5框架、Nginx服务器、前后端分离项目
- 本地测试正常,线上使用TP5Hook出现重复执行hook操作的问题
解决过程
1、怀疑是前端axios的问题
本地是正常的,服务器是错误的,是不是Nginx哪个地方没有配置好?是不是由于axios会进行请求的预处理,但是在代码中处理了OPTION请求还是有问题
2、修改服务器配置
前端项目是用nginx配置的代理到接口服务器上的,会不会是在转发的时候进行数据的重定向操作导致数据执行了两次,然后就配置proxy_redirect这个nginx配置,但是也没有效果
3、调试服务器代码
在执行HooK::listen处打断点,在执行前面可以看到很多的钩子配置标签,调试的是after_login这个标签,发现在一个数组中有两个关于这个钩子的配置,好像发现了什么,但是代码中明明就只留一处进行配置,最后发现项目中确实存在多个tag配置文件,自己在本地的时候已经删除了为什么压缩上传后又有了,可能是因为每天都进行文件的压缩,但是压缩上传后并没有删除,而且压缩文件的名字还是一样的,可能就是在压缩的时候保留了原来的文件
感悟
没有,就是慢慢调