gpt4 book ai didi

php - 当 session 驱动程序是数据库 Laravel 时 token 未匹配

转载 作者:搜寻专家 更新时间:2023-10-30 23:33:21 24 4
gpt4 key购买 nike

当我将驱动程序 session 更改为数据库时出现问题,当我尝试登录时总是 token 未匹配。我做了一些 Action ,比如

php artisan config:clear
php artisan config:cache
php artisankey:generate

同时更改 config/session.php

return [
'driver' => env('SESSION_DRIVER', 'file'),'lifetime' => 120,
'expire_on_close' => false,
'encrypt' => false,'files' =>
'storage_path('framework/sessions'),'connection' => 'mysql',
'table' => 'sessions',
'store' => null,
'lottery' => [2, 100],
'cookie' => 'laravel_session',
'path' => '/',
'domain' => env('SESSION_DOMAIN', null),
'secure' => env('SESSION_SECURE_COOKIE', false);
'http_only' => true,
];

我有这个错误

enter image description here

最佳答案

我认为您应该按照以下步骤明智地将 SESSION_DRIVER 设置为数据库

1- 你的 .env 文件

# file = .env 在你的项目根目录

DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=testdb
DB_USERNAME=db_user
DB_PASSWORD=secret_pass

SESSION_DRIVER=database

注意此处的 DB_CONNECTION 设置,您将在下一步中需要它。

2- 更新 config/session.php 文件,其中连接参数应包含您在 .env 文件中用于 DB_CONNECTION 的字符串

#file = config/session.php

'driver' => env('SESSION_DRIVER', 'database'),
'connection' => 'mysql', // this is from DB_CONNECTION in .env file

3-生成 session 表

php artisan session:table

//运行迁移!!!非常非常重要

php artisan migrate

4- 如果出于某种原因您决定在不使用迁移的情况下手动创建表,请使用此 SQL。这是非常重要的一步,错误的表格会导致各种问题。主要是不要犯像往常一样手动创建id列为bigint的表的错误,session表是不同的。SQL 如果你想手动创建你应该运行的 session 表

DROP TABLE IF EXISTS `sessions`;
create table sessions
(
id varchar(255) not null,
user_id int(10) unsigned null,
ip_address varchar(45) null,
user_agent text null,
payload text not null,
last_activity int not null,
constraint sessions_id_unique
unique (id)
)

请检查,我认为此信息对您有帮助!!!

关于php - 当 session 驱动程序是数据库 Laravel 时 token 未匹配,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45972231/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com