【发布时间】:2019-06-08 08:09:12
【问题描述】:
我的 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
【问题讨论】:
-
你能不能简单地使用 session(['key', 'value']);会话('键)
-
您可以尝试在您的
session.php配置中将'secure' => true更改为'secure' => false,因为您没有HTTPS。 -
@Remul 我试过 "false" 但没用。
-
更改值后可以运行
php artisan config:clear吗?