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

Mubin-Sayed's avatar

Target class [App\\Http\\Controllers\\Api\\AuthController] does not exist.

I am using Laravel 6.* with passport for API's. On my local server API's are working fine but on live server its giving the following error

{
    "message": "Target class [App\Http\Controllers\Api\AuthController] does not exist.",
    "exception": "Illuminate\Contracts\Container\BindingResolutionException",
    "file": "/home/techdevelopment/school-management/vendor/laravel/framework/src/Illuminate/Container/Container.php",
    "line": 805,
    "trace": [
        {
            "file": "/home/techdevelopment/school-management/vendor/laravel/framework/src/Illuminate/Container/Container.php",
            "line": 681,
            "function": "build",
            "class": "Illuminate\Container\Container",
            "type": "->"
        },
        {
            "file": "/home/techdevelopment/school-management/vendor/laravel/framework/src/Illuminate/Foundation/Application.php",
            "line": 785,
            "function": "resolve",
            "class": "Illuminate\Container\Container",
            "type": "->"
        },
        {
            "file": "/home/techdevelopment/school-management/vendor/laravel/framework/src/Illuminate/Container/Container.php",
            "line": 629,
            "function": "resolve",
            "class": "Illuminate\Foundation\Application",
            "type": "->"
        },
        {
            "file": "/home/techdevelopment/school-management/vendor/laravel/framework/src/Illuminate/Foundation/Application.php",
            "line": 770,
            "function": "make",
            "class": "Illuminate\Container\Container",
            "type": "->"
        },
        {
            "file": "/home/techdevelopment/school-management/vendor/laravel/framework/src/Illuminate/Routing/Route.php",
            "line": 233,
            "function": "make",
            "class": "Illuminate\Foundation\Application",
            "type": "->"
        },
        {
            "file": "/home/techdevelopment/school-management/vendor/laravel/framework/src/Illuminate/Routing/Route.php",
            "line": 833,
            "function": "getController",
            "class": "Illuminate\Routing\Route",
            "type": "->"
        },
        {
            "file": "/home/techdevelopment/school-management/vendor/laravel/framework/src/Illuminate/Routing/Route.php",
            "line": 794,
            "function": "controllerMiddleware",
            "class": "Illuminate\Routing\Route",
            "type": "->"
        },
        {
            "file": "/home/techdevelopment/school-management/vendor/laravel/framework/src/Illuminate/Routing/Router.php",
            "line": 694,
            "function": "gatherMiddleware",
            "class": "Illuminate\Routing\Route",
            "type": "->"
        },
        {
            "file": "/home/techdevelopment/school-management/vendor/laravel/framework/src/Illuminate/Routing/Router.php",
            "line": 674,
            "function": "gatherRouteMiddleware",
            "class": "Illuminate\Routing\Router",
            "type": "->"
        },
        {
            "file": "/home/techdevelopment/school-management/vendor/laravel/framework/src/Illuminate/Routing/Router.php",
            "line": 658,
            "function": "runRouteWithinStack",
            "class": "Illuminate\Routing\Router",
            "type": "->"
        },
        {
            "file": "/home/techdevelopment/school-management/vendor/laravel/framework/src/Illuminate/Routing/Router.php",
            "line": 624,
            "function": "runRoute",
            "class": "Illuminate\Routing\Router",
            "type": "->"
        },
        {
            "file": "/home/techdevelopment/school-management/vendor/laravel/framework/src/Illuminate/Routing/Router.php",
            "line": 613,
            "function": "dispatchToRoute",
            "class": "Illuminate\Routing\Router",
            "type": "->"
        },
        {
            "file": "/home/techdevelopment/school-management/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php",
            "line": 170,
            "function": "dispatch",
            "class": "Illuminate\Routing\Router",
            "type": "->"
        },
        {
            "file": "/home/techdevelopment/school-management/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 130,
            "function": "Illuminate\Foundation\Http\{closure}",
            "class": "Illuminate\Foundation\Http\Kernel",
            "type": "->"
        },
        {
            "file": "/home/techdevelopment/school-management/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php",
            "line": 21,
            "function": "Illuminate\Pipeline\{closure}",
            "class": "Illuminate\Pipeline\Pipeline",
            "type": "->"
        },
        {
            "file": "/home/techdevelopment/school-management/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 171,
            "function": "handle",
            "class": "Illuminate\Foundation\Http\Middleware\TransformsRequest",
            "type": "->"
        },
        {
            "file": "/home/techdevelopment/school-management/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/TransformsRequest.php",
            "line": 21,
            "function": "Illuminate\Pipeline\{closure}",
            "class": "Illuminate\Pipeline\Pipeline",
            "type": "->"
        },
        {
            "file": "/home/techdevelopment/school-management/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 171,
            "function": "handle",
            "class": "Illuminate\Foundation\Http\Middleware\TransformsRequest",
            "type": "->"
        },
        {
            "file": "/home/techdevelopment/school-management/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/ValidatePostSize.php",
            "line": 27,
            "function": "Illuminate\Pipeline\{closure}",
            "class": "Illuminate\Pipeline\Pipeline",
            "type": "->"
        },
        {
            "file": "/home/techdevelopment/school-management/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 171,
            "function": "handle",
            "class": "Illuminate\Foundation\Http\Middleware\ValidatePostSize",
            "type": "->"
        },
        {
            "file": "/home/techdevelopment/school-management/vendor/laravel/framework/src/Illuminate/Foundation/Http/Middleware/CheckForMaintenanceMode.php",
            "line": 63,
            "function": "Illuminate\Pipeline\{closure}",
            "class": "Illuminate\Pipeline\Pipeline",
            "type": "->"
        },
        {
            "file": "/home/techdevelopment/school-management/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 171,
            "function": "handle",
            "class": "Illuminate\Foundation\Http\Middleware\CheckForMaintenanceMode",
            "type": "->"
        },
        {
            "file": "/home/techdevelopment/school-management/vendor/fideloper/proxy/src/TrustProxies.php",
            "line": 57,
            "function": "Illuminate\Pipeline\{closure}",
            "class": "Illuminate\Pipeline\Pipeline",
            "type": "->"
        },
        {
            "file": "/home/techdevelopment/school-management/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 171,
            "function": "handle",
            "class": "Fideloper\Proxy\TrustProxies",
            "type": "->"
        },
        {
            "file": "/home/techdevelopment/school-management/vendor/laravel/framework/src/Illuminate/Pipeline/Pipeline.php",
            "line": 105,
            "function": "Illuminate\Pipeline\{closure}",
            "class": "Illuminate\Pipeline\Pipeline",
            "type": "->"
        },
        {
            "file": "/home/techdevelopment/school-management/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php",
            "line": 145,
            "function": "then",
            "class": "Illuminate\Pipeline\Pipeline",
            "type": "->"
        },
        {
            "file": "/home/techdevelopment/school-management/vendor/laravel/framework/src/Illuminate/Foundation/Http/Kernel.php",
            "line": 110,
            "function": "sendRequestThroughRouter",
            "class": "Illuminate\Foundation\Http\Kernel",
            "type": "->"
        },
        {
            "file": "/home/techdevelopment/school-management/public/index.php",
            "line": 55,
            "function": "handle",
            "class": "Illuminate\Foundation\Http\Kernel",
            "type": "->"
        },
        {
            "file": "/home/techdevelopment/school-management/index.php",
            "line": 21,
            "function": "require_once"
        }
    ]
}

AuthController.php

<?php

namespace App\Http\Controllers\API;

use App\Http\Controllers\Controller;
use App\User;
use Illuminate\Http\Request;

class AuthController extends Controller
{

    public function login(Request $request)
    {
        $loginData = $request->validate([
            'email' => 'email|required',
            'password' => 'required',
        ]);

        if (!auth()->attempt($loginData)) {
            return response([
                'success' => false,
                'message' => 'Invalid Credentials',
            ]);
        }

        $accessToken = auth()->user()->createToken('authToken')->accessToken;

        return response([
            'success' => true,
            'user' => auth()->user(),
            'access_token' => $accessToken,
        ]);

    }
}


routes/api.php

<?php

use Illuminate\Http\Request;

/*
|--------------------------------------------------------------------------
| API Routes
|--------------------------------------------------------------------------
|
| Here is where you can register API routes for your application. These
| routes are loaded by the RouteServiceProvider within a group which
| is assigned the "api" middleware group. Enjoy building your API!
|
*/
Route::post('/login', 'Api\AuthController@login');

Route::middleware('auth:api')->get('/user', function (Request $request) {
    return $request->user();
});

Route::group(['prefix' => 'v1', 'middleware' => 'auth:api'], function () {
    Route::apiResource('/student', 'Api\StudentController');
});

0 likes
5 replies
automica's avatar

@mubin-sayed how did you publish your vendor packages to your remote environment?

If you copied them up, delete the /vendor directory and run composer install to rebuild them and the autoload files

Sinnbeck's avatar
Sinnbeck
Best Answer
Level 102

Case matters!

'Api\AuthController@login'); //lower case Api

namespace App\Http\Controllers\API; //UPPER case API

1 like

Please or to participate in this conversation.