修复 laravel 5 会话在刷新或进入另一个页面后过期?
Posted
技术标签:
【中文标题】修复 laravel 5 会话在刷新或进入另一个页面后过期?【英文标题】:fix laravel 5 session expiring after refresh or going on another page? 【发布时间】:2015-12-11 12:35:30 【问题描述】:我正在使用 laravel 默认身份验证。当我登录我的网站时,一切都很好。当我尝试刷新或转到另一个页面(仍在使用 Auth 中间件)时,我的会话已过期,我直接注销,我必须重新登录。如何解决此问题,以便在刷新页面或浏览另一个页面时保持登录状态?
【问题讨论】:
问题解决了吗? 【参考方案1】:您也可以尝试在config/session.php
中设置更高的生命周期
/*
|--------------------------------------------------------------------------
| Session Lifetime
|--------------------------------------------------------------------------
|
| Here you may specify the number of minutes that you wish the session
| to be allowed to remain idle before it expires. If you want them
| to immediately expire on the browser closing, set that option.
|
*/
'lifetime' => 120,
'expire_on_close' => false,
注意expire_on_close
,如果您将其设置为 true,则会话将在浏览器关闭时过期
【讨论】:
【参考方案2】:值得更改(app/session.php):
'cookie' => 'laravel_session'
每次编译缓存时都会重置与您的应用/网站相关的内容
【讨论】:
我没听懂你能解释一下吗?【参考方案3】:检查会话配置文件:
config/session.php
如果你有
'driver' => env('SESSION_DRIVER', 'file')
检查默认为'storage/framework/sessions'的会话文件夹的权限:
'files' => storage_path('framework/sessions')
【讨论】:
我正在使用我的本地主机。仍然遇到这个问题:( 你在存储文件夹中设置了777权限吗? 是的,我试过这个命令 chmod -R 777 appname/storage 但仍然遇到这个问题 进入站点后,您能看到 storage/framework/sessions 中的文件吗?也许您可以将驱动程序更改为“cookies”,看看会发生什么 是的,我可以看到。当我进入网站时,它会创建一个新文件。 :(以上是关于修复 laravel 5 会话在刷新或进入另一个页面后过期?的主要内容,如果未能解决你的问题,请参考以下文章
Laravel Session 总是改变 Laravel 5.4 中的每个刷新/请求