Laravel 9 Fortify点击密码重置链接触发ArgumentCountError问题
Laravel 9 + Fortify 密码重置路由错误排查方向
- 确认
config/fortify.php中已开启密码重置功能:确保features数组包含Features::resetPasswords(),未被注释。 - 检查Fortify服务提供者的
boot方法:Fortify::resetPasswordView()闭包必须在boot方法内注册,不能放在register方法中。示例代码:public function boot() { Fortify::resetPasswordView(function ($request) { return view('auth.reset-password', ['request' => $request]); }); } - 排查路由冲突:检查
routes/api.php或routes/web.php中是否手动定义了GET /api/reset-password路由,自定义路由会覆盖Fortify默认路由,导致原闭包无法触发。 - 验证路由注册顺序:确保
Fortify::routes()的执行顺序在自定义路由之前,避免自定义路由抢占匹配优先级。 - 清除路由缓存:执行
php artisan route:clear命令,避免旧路由缓存导致新配置不生效。 - 检查路由分组配置:Fortify默认密码重置视图路由属于web路由组,若强制使用
/api前缀,需确认Fortify路由是否被正确归入api组,或调整密码重置邮件的链接前缀为web路由前缀。 - 核对版本兼容性:确认所用Fortify版本与Laravel 9完全兼容,避免版本不匹配引发的路由注册异常。
内容的提问来源于stack exchange,提问作者Dan
相关产品推荐
相关产品推荐

