Be part of JetBrains PHPverse 2026 on June 9 – a free online event bringing PHP devs worldwide together.

Nix1128's avatar

Auth guard [] is not defined

Hi everyone,

I am new here and yes, i would appreciate a little help with my app.

I know this issue has been discussed before but i just cant get it resolved for a few days already.

Laravel Version: 6.2 PHP Version: 7.2

Description:

This exception described below comes to happen on every new web.php route i create. It just cant let me continue to the view file. I have session set, i have the session token in PostController but every time i hit "Posts" button on my blade view it shoots out that error.

The catch here is:

-I have never set auth::make before. I just don`t want to use this facade atm. I have build the login/logout/reset_password my own. I am not using Auth anywhere

-I did not upgrade my versions

-I have NO guards set on any of my routes, i have no middleware anywhere on my routes.

-And i did not touch the config/auth.php file for that reason. And i am just confused should i edit something in auth.php when i have no guards set anywhere.

Any ideas would be highly appreciated as i got stuck?

Thank you!

Error is : (1/1) InvalidArgumentExceptionAuth guard [] is not defined. in AuthManager.php line 84 at AuthManager->resolve(null)in AuthManager.php line 68 at AuthManager->guard(null)in AuthManager.php line 54 at AuthManager->Illuminate\Auth{closure}(null)

...and so on ..............

My route in web.php : Route::resource('/posts', 'Posts\PostController')->only(['index']); ....................

`<?php

return [

/*
|--------------------------------------------------------------------------
| Authentication Defaults
|--------------------------------------------------------------------------
|
| This option controls the default authentication "guard" and password
| reset options for your application. You may change these defaults
| as required, but they're a perfect start for most applications.
|
*/

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

/*
|--------------------------------------------------------------------------
| Authentication Guards
|--------------------------------------------------------------------------
|
| Next, you may define every authentication guard for your application.
| Of course, a great default configuration has been defined for you
| here which uses session storage and the Eloquent user provider.
|
| All authentication drivers have a user provider. This defines how the
| users are actually retrieved out of your database or other storage
| mechanisms used by this application to persist your user's data.
|
| Supported: "session", "token"
|
*/

'guards' => [
    'web' => [
        'driver' => 'session',
        'provider' => 'users',
    ],


    'api' => [
        'driver' => 'token',
        'provider' => 'users',
    ],
],

/*
|--------------------------------------------------------------------------
| User Providers
|--------------------------------------------------------------------------
|
| All authentication drivers have a user provider. This defines how the
| users are actually retrieved out of your database or other storage
| mechanisms used by this application to persist your user's data.
|
| If you have multiple user tables or models you may configure multiple
| sources which represent each model / table. These sources may then
| be assigned to any extra authentication guards you have defined.
|
| Supported: "database", "eloquent"
|
*/

'providers' => [
    'users' => [
        'driver' => 'eloquent',
        'model' => App\User::class,
    ],

    // 'users' => [
    //     'driver' => 'database',
    //     'table' => 'users',
    // ],
],

/*
|--------------------------------------------------------------------------
| Resetting Passwords
|--------------------------------------------------------------------------
|
| Here you may set the options for resetting passwords including the view
| that is your password reset e-mail. You may also set the name of the
| table that maintains all of the reset tokens for your application.
|
| You may specify multiple password reset configurations if you have more
| than one user table or model in the application and you want to have
| separate password reset settings based on the specific user types.
|
| The expire time is the number of minutes that the reset token should be
| considered valid. This security feature keeps tokens short-lived so
| they have less time to be guessed. You may change this as needed.
|
*/

'passwords' => [
    'users' => [
        'provider' => 'users',
        'email' => 'auth.emails.password',
        'table' => 'password_resets',
        'expire' => 60,
    ],
],

];`

1 like
4 replies
Nix1128's avatar

Can anyone help?

This is my controller class

`<?php

namespace App\Http\Controllers\Posts;

use App\Http\Controllers\Controller; use App\Model\Post; use Illuminate\Http\Request;

use App\Model\Hause_users; use Illuminate\Support\Facades\Auth;

class PostController extends Controller

{



public function index( Request $request )
{

    $name = $request->session()->get('name');

    $user = Hause_users::where('username', $request->session()->get('name'))->first();
   //dd($user->username);

    $posts = new Post([

        'title' => 'ssss',
        'body' => 'dasdasd',
        'user_id' => $user->id,


    ]);
    dd($posts);
    $posts->save();


    if ($posts->title != null || $posts->title = '') {
      $posts->title->update(['title' => request('Title')]);
    }

    return redirect('posts')->with($name)->with($posts)->with('message','Промените са запазени успешно');
    }


/**
 * Show the form for creating a new resource.
 *
 * @return \Illuminate\Http\Response
 */
public function create()
{
    //
}`
Nix1128's avatar
Nix1128
OP
Best Answer
Level 1

I found the issue, thanks for shearing..

bigdogdman1's avatar

@Nix1128 What was the problem? I'm experiencing this same problem, although I have modified my auth.php & appServiceProvider.

3 likes
usmandev's avatar

@bigdogdman1 I had the same error. Turned out I had to update the composer using the command 'composer update' and it worked.

Please or to participate in this conversation.