laravel:未设置密码重置程序[]

时间:2018-07-22 12:07:40

标签: php laravel passwords

当我转到Laravel的密码重置链接(example.com/password/reset)时,写我的电子邮件,然后单击“发送密码重置链接”按钮,它转到example.com/password/email链接并显示错误:

  

[2018-07-21 17:59:35]本地。错误:密码重置器[]不是   定义。 {“ exception”:“ [object](InvalidArgumentException(code:0):   未定义密码重置器[]。在   /var/www/project/vendor/laravel/framework/src/Illuminate/Auth/Passwords/PasswordBrokerManager.php:67)

我使用Laravel 5.6 我应该注意,当我将Laravel项目移至新的VPS时,发生了此错误。 我在VPS上使用laravel。 有什么问题?

3 个答案:

答案 0 :(得分:1)

请确保您的config/auth.php中存在此代码。

'passwords' => [
        'users' => [
            'provider' => 'users',
            'table' => 'password_resets',
            'expire' => 60,
        ],
    ],

答案 1 :(得分:0)

您的路线应有名称,请检查它:

Route::get('password/email', 'Auth\ForgotPasswordController@showLinkRequestForm')->name('password.email');
Route::post('password/email', 'Auth\ForgotPasswordController@sendResetLinkEmail');

// Password reset routes...
Route::get('password/reset/{token}', 'Auth\ResetPasswordController@showResetForm')->name('password.request');
Route::post('password/reset', 'Auth\ResetPasswordController@postReset')->name('password.reset');

答案 2 :(得分:0)

确保您具有键=>值对:

'defaults' => [
    'guard' => 'web',
    'passwords' => 'users',
],

在您的config/auth.php