Minden Laravel kérés egyetlen front controlleren, a public/index.php-n keresztül lép be, a HTTP Kernel hajtja végig egy -vermen és a át egy , majd visszaad egy -t — ezután lefut a middleware.
Minden Laravel kérés egyetlen front controlleren, a public/index.php-n keresztül lép be, a HTTP Kernel hajtja végig egy -vermen és a át egy , majd visszaad egy -t — ezután lefut a middleware.
Responsepublic/index.php ── autoload + az app bootstrapja
▼
HTTP Kernel::handle($request)
▼
Bootstrappers ── env, config, providers (register + boot)
▼
Global middleware ── (TrustProxies, HandleCors, ...)
▼
Router dispatch ── illeszti a route-ot
▼
Route / group middleware ── (auth, throttle, verified, ...)
▼
Controller (vagy closure) ── a logikád → visszaad egy Response-t
▼
Response ──▶ client
▼
Kernel::terminate ── terminable middleware (pl. session mentés, logging)
index.php betölti a Composer autoloadot, és bootstrapolja az alkalmazás containerét.Request-et, és lefuttatja a bootstrappereket: betölti az env + config-ot, regisztrálja és boot-olja a service providereket (itt drótozódik össze a framework és a te bindingjeid).auth, throttle, verified) a controller előtt fut; mindegyik rövidre zárhat.Response-t (view, JSON, redirect). A middleware „utáni” logikája akkor fut, amikor a response visszabuborékol kifelé.Kernel::terminate lefuttatja a terminable middleware-t a halasztott munkához.// app/Http/Middleware/Timing.php → 3/5. middleware
public function handle($request, Closure $next)
{
$request->attributes->set('started', microtime(true));
$response = $next($request); // továbbadja a következő rétegnek / controllernek
$response->headers->set('X-Time', '...'); // "utáni" logika
return $response;
}
// routes/web.php → 4. routing (+ middleware)
Route::get('/items/{id}', [ItemController::class, 'show'])->middleware('auth');
// app/Http/Controllers/ItemController.php → 6. controller
public function show(int $id)
{
return response()->json(Item::findOrFail($id));
}
A Laravel életciklusa a service container és a middleware pipeline köré épül, így a sorrend ismerete — bootstrap/providers, majd global middleware, majd routing, majd route middleware, majd controller, majd terminate — pontosan megmondja, hova tartozik az auth, a rate limiting, a CORS és a takarítás. Megmagyarázza, miért kell egy service-t egy providerben bindolni, mielőtt injektálódik, miért utasít el a throttle egy kérést a controllered lefutása előtt, és hogyan lehet a lassú munkát terminable middleware-re halasztani, hogy a felhasználónak ne kelljen várnia.
IT interjúkérdések gyűjteménye részletes válaszokkal — Juniortól Seniorig.
Adományozás