我的项目访问过快 session老是重置

这里是我记录的请求日志,前一个请求还是正常的,后一个请求session就失效了

QQ截图20150612220448.png


同一秒访问的时候session直接给我重新生成了一个,这个要怎么解决能。

QQ图片20150615101521.png
已邀请:

JasonLaravel

赞同来自:

看看ajax的header是否带了session_id,没带说明cookie丢失或者跨域了。那么重新生成session 是正常的

wuangv - you win

赞同来自:

我今天测试了一下是。

这是原生 php

这里请求一次 置一个Session的值
<?php //cs1.php
session_start();
$_SESSION['key'] = 'value';
echo session_id();

这里不断访问这个,不管刷新的多快session都不会丢失。
<?php //cs.php
session_start();
echo $_SESSION['key'].'<br>';
sleep(1);
echo session_id();

这是laravel5测试代码
这里请求一次 置一个Session的值
Route::get('cs1',function(\Illuminate\Http\Request $request){
session(['key'=>'vaule']);
return response(session('key').'    '.Session::getId());
});

不断请求这个路由,会导致session失效。
Route::get('cs',function(\Illuminate\Http\Request $request){
$cookie = var_export($request->cookie(),true);
return response(session('key').'    '.Session::getId().'    '.$cookie);
});

胡容升

赞同来自:

我也经常碰到session失效问题,然后有时候又会突然好了。没搞明白为什么。

未育龙年各类

赞同来自:

设置失效根本就没用啊,

wuangv - you win

赞同来自:

减少ajax请求吧, ajax是异步当有多个请求同时到达服务器的时候,当其中一个请求在操作session其实是锁住状态,这时候symfony这个框架会重新分配session_id

要回复问题请先登录注册