我的Laravel 5.5实例在localhost上运行良好,但是,当我将其上传到服务器时,会话不起作用。我已经将会话驱动程序设置为数据库,并且可以看到存储在数据库中的数据。
问题在于读取总是返回null的会话。
function index(Request $request)
{
if ($request->input('set_sess')) {
try {
$request->session()->put('test', 'xxx');
$request->session()->save();
} catch (\Exception $e) {
dd($e->getMessage());
}
dd('session was set');
}
if ($request->input('get_sess')) {
dd($request->session()->get('test'));
}
}
session.php
'driver' => env('SESSION_DRIVER', 'database'),
'encrypt' => false,
'connection' => 'mysql',
'table' => 'sessions',
'domain' => 'example.com',
'secure' => false,
.env
APP_NAME=examplename
APP_ENV=local
APP_DEBUG=true
APP_LOG_LEVEL=debug
APP_URL=http://example.com
BROADCAST_DRIVER=log
CACHE_DRIVER=file
SESSION_DRIVER=database
SESSION_LIFETIME=120
答案 0 :(得分:0)
请尝试以下操作:
(您不需要->save()
)
替换:
$request->session()->put('test', 'xxx');
$request->session()->save();
具有:
session()->put('test', 'xxx');