laravel 5.2使用session一直报错Session store not set on request

clipboard.png

网上找了好久,都说要给路由配置中间件,我也配置了,Kernel.php我也没动过

clipboard.png

被这个问题折腾了好几天了,csrf也没效果,明明都引用了中间件的,我甚至都直接放到全局中间件里面也没用,真是怪了,重新建了个laravel项目也这样

clipboard.png

路由配置中间件试过了,版本是最新的,RouteServiceProvider里面也有自动加载web中间件的代码,都没用,这些方法网上都找的到,根本没效果啊。。

阅读 10.2k
5 个回答

路由配置上使用web中间件

Route::group(['middleware' => ['web']], function () {
    // your routes here
});

如果在Routes上添加web中间件没有效果的话,你可以添加下面的$middleware 到 Kernel.php里面

protected $middleware = [
        //...
        \Illuminate\Session\Middleware\StartSession::class,
        \Illuminate\View\Middleware\ShareErrorsFromSession::class,
];

config/service.php,.env 没配置session?

如果你是使用文件session 检查你storage 目录是否有写入权限
使用 database 检查有没有sessions表
使用memcache/redis 有没有启动memcached和redis 服务,已经有没有装相应拓展!

新手上路,请多包涵

遇到了同样的问题,session() 可以用 但是$request->session()-put() 这样不行,我这边的解决方法简单粗暴,在/app/Http/Kernel.php 文件中加入如下两行代码:

protected $middleware = [

    \Illuminate\Foundation\Http\Middleware\CheckForMaintenanceMode::class,
    StartSession::class,
    ShareErrorsFromSession::class,
];

当然,我是use了
use IlluminateSessionMiddlewareStartSession;
use IlluminateViewMiddlewareShareErrorsFromSession;

还有 我是Laravel5.3 目前为止已经解决问题了

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏