如何设置Laravel登录持久化功能,实现记住我功能?

2026-04-27 19:030阅读0评论SEO教程
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计942个文字,预计阅读时间需要4分钟。

如何设置Laravel登录持久化功能,实现记住我功能?

Laravel 的记住我功能依赖于数据库中 `users` 表的 `remember_token` 字段。如果该字段为 `NULL` 或未正确写入,选择记住我将无效。Laravel 不会自动创建或迁移这个字段——它仅在执行 `php artisan make:auth`(旧版)或手动添加字段时存在。

实操建议:

  • 检查 users 表是否有 remember_token 字段,类型应为 varchar(100),允许 NULL
  • 如果没有,新建迁移:php artisan make:migration add_remember_token_to_users_table,并在 up() 中添加:$table->rememberToken();
  • 确保登录逻辑调用的是 Auth::attempt([...], $request->filled('remember')),而不是硬编码 true 或漏掉第二个参数

登录后 Cookie 没有持久化,关浏览器就登出

“记住我”生效的前提是 Laravel 正确设置了长期有效的 remember_web_* Cookie,而它受 session.lifetimeremember_me_seconds 两个配置共同影响——很多人只改了前者,忘了后者。

阅读全文
标签:Laravel

本文共计942个文字,预计阅读时间需要4分钟。

如何设置Laravel登录持久化功能,实现记住我功能?

Laravel 的记住我功能依赖于数据库中 `users` 表的 `remember_token` 字段。如果该字段为 `NULL` 或未正确写入,选择记住我将无效。Laravel 不会自动创建或迁移这个字段——它仅在执行 `php artisan make:auth`(旧版)或手动添加字段时存在。

实操建议:

  • 检查 users 表是否有 remember_token 字段,类型应为 varchar(100),允许 NULL
  • 如果没有,新建迁移:php artisan make:migration add_remember_token_to_users_table,并在 up() 中添加:$table->rememberToken();
  • 确保登录逻辑调用的是 Auth::attempt([...], $request->filled('remember')),而不是硬编码 true 或漏掉第二个参数

登录后 Cookie 没有持久化,关浏览器就登出

“记住我”生效的前提是 Laravel 正确设置了长期有效的 remember_web_* Cookie,而它受 session.lifetimeremember_me_seconds 两个配置共同影响——很多人只改了前者,忘了后者。

阅读全文
标签:Laravel