环境:
客户端:安卓webview
服务端 : lnmp + nginx 转发
框架 : thinkPHP
问题:一个页面记录的session,到另外一个页面就取不到了,简称session丢失。
表现:一个页面地址 index.php/home/ctrl/action1 记录了session ,发起一个ajax请求 到index.php/home/ctrl/action2, 在action2里面取出的session为空的
分析:session丢失的根本原因是因为PHPSESSIONID这个cookie丢失。
解决方案,action2的地址是通过thinkphp的U函数取出的所以实际访问地址是index.php/home/ctrl/action2.html,
发现只要把url地址手写成index.php/home/ctrl/action2 或者 关闭thinkphp u函数的后缀就可以了,原因未知,不知道安卓的webview和我们的生产环境哪里出了问题