Laravel 为每个请求创建一个新会话

nva*_*n84 7 php session laravel

出于某种原因,我无法弄清楚我的 Laravel 安装已经开始为每个请求创建一个新的会话文件!这使会话无用,因此我的用户无法保持登录状态,csrf 令牌不匹配等。

我正在使用 Laravel 5.2。在我的本地环境中似乎很好,但在实时服务器上则不然

有没有人知道为什么会发生这种情况以及我如何解决它?

提前致谢

小智 8

在本地一切正常,但不在生产服务器上。问题出在主机上的php.ini设置中,默认情况下,参数(变量)“ mbstring.func_overload = 2 ”设置在那里。我删除了它,然后一切都奏效了。此参数适用于许多 CMS 使用的早期版本 (PHP)。而 Laravel 在授权过程中报错 419 仅此而已,并且每次页面更新时都会创建一个新会话。


sal*_*xch 5

从 5.1 升级到 laravel 5.4 后我遇到了类似的问题,我发现我没有正确升级 app/Http/Kernel.php 。

\Illuminate\Session\Middleware\StartSession::class
Run Code Online (Sandbox Code Playgroud)

protected $middleware在数组和中声明了两次

protected $middlewareGroups
Run Code Online (Sandbox Code Playgroud)

从阵列中删除它后,$middleware它开始正常工作

$middleware应用于所有路由并$middlewareGroups应用于特定组


kri*_* kk 0

你检查过这个帖子Laravel 论坛吗

它说检查文件 app/config/app.php 中的标记之前是否有空行<?php,如果有则删除空行