Lumen5.6开启Session
Lumen框架已经剔除了session的默认支持,但是我们仍然可以自己添加session功能
1.注册SessionServiceProvider
打开bootstrap/app.php,在相应位置添加注册SessionServiceProvider,代码如下
$app->register(Illuminate\Session\SessionServiceProvider::class);
2.添加session相关配置所需配置
在bootstrap/app.php中添加配置代码
configure函数会从文件中加载配置,并绑定到container中,接下来只需要在项目根目录创建config文件夹,并新建 session.php配置文件
<?php
// config/session.php
// 这里直接从laravel中copy过来了,并且使用了file驱动,当然你也可以使用其他驱动,详细配置请查阅laravel官方文档
return [
'driver' => env('SESSION_DRIVER', 'file'),//默认使用file驱动,你可以在.env中配置
'lifetime' => 120,//缓存失效时间
'expire_on_close' => false,
'encrypt' => false,
'files' => storage_path('framework/session'),//file缓存保存路径
'connection' => null,
'table' => 'sessions',
'lottery' => [2, 100],
'cookie' => 'laravel_session',
'path' => '/',
'domain' => null,
'secure' => false,
];
然后在storage/framework/下建立session文件夹用来存储session缓存,别忘了修改权限
sudo mkdir session
sudo chown -R www:www session/
3.注册StartSession中间件
打开bootstrap/app.php,在Register Middleware位置修改
4.添加Session别名
5.使用session
本篇借助于大佬的分享:Lumen中启用session - 简书