Php Can';t在升级到Laravel 5.4后保持用户登录
我有一个使用Laravel 5.3开发的应用程序,运行良好,但升级到Laravel 5.4后,每次我们进行身份验证时,它都会正常运行,我们可以访问用户信息:Php Can';t在升级到Laravel 5.4后保持用户登录,php,laravel-5.4,Php,Laravel 5.4,我有一个使用Laravel 5.3开发的应用程序,运行良好,但升级到Laravel 5.4后,每次我们进行身份验证时,它都会正常运行,我们可以访问用户信息: {"id":X,"name":"Foo","email":"foo@bar.com", . . .} 问题是,它并没有真正登录,因为当我们想要访问该用户有权访问的受保护视图时,它会在登录页面上重定向 我检查了新安装的Laravel 5.4身份验证方法,没有发现应用程序与新安装的5.4应用程序之间有任何区别。 因此,如果有人能告诉我这个问题
{"id":X,"name":"Foo","email":"foo@bar.com", . . .}
问题是,它并没有真正登录,因为当我们想要访问该用户有权访问的受保护视图时,它会在登录页面上重定向我检查了新安装的Laravel 5.4身份验证方法,没有发现应用程序与新安装的5.4应用程序之间有任何区别。
因此,如果有人能告诉我这个问题是从哪里来的,那将非常有帮助,
谢谢
编辑:在保护路由的中间件中,Auth()->user()似乎获得空值。我发现了问题所在,但没有在此处写出答案。
实际发生的情况是,会话Cookie的加密配置选项似乎设置为false,但它需要加密Cookie中间件,而加密Cookie中间件缺失。我发现了问题所在,但没有在此处写出答案。
实际发生的情况是,会话Cookie的encrypt config选项似乎设置为false,但它需要EncryptCookie中间件,但该中间件丢失了。在Kernel.php文件中,您是否在$middlewareGroups['web'上有
\light\session\middleware\StartSession::class
?如果您这样做,请确保您的路由具有中间件web,或者您可以在$middleware['web']中移动\light\Session\middleware\StartSession::class
。在Kernel.php文件中,您是否具有$middlewareGroups['web']上的\light\Session\middleware\StartSession::class
?如果您这样做,请确保您的路由具有中间件web,或者您可以在$middleware内移动\light\Session\middleware\StartSession::class
。