В public\index.php я просто сбрасываю переменную $kernel следующим образом:
$app = require_once __DIR__.'/../bootstrap/app.php';
$kernel = $app->make(Illuminate\Contracts\Http\Kernel::class);
dd($kernel);die;
Результатом передачи $kernel в dd() является Illuminate\Foundation\Http\Kernel, а не Illuminate\Contracts\Http\Kernel. Как создается Illuminate\Foundation\Http\Kernel?






Laravel знает, как разрешить экземпляр с учетом привязок в bootstrap/app.php:
$app->singleton(
Illuminate\Contracts\Http\Kernel::class,
App\Http\Kernel::class
);
По умолчанию вывод должен быть App\Http\Kernel. Каково содержание вашего файла bootstrap/app.php?
А вывод
Illuminate\Foundation\Http\Kernel?