प्रत्येक Laravel request एका single front controller, public/index.php, द्वारे प्रवेश करते, HTTP Kernel द्वारे एका stack आणि मधून एका पर्यंत चालवली जाते, आणि एक परत करते — त्यानंतर middleware चालते.
प्रत्येक Laravel request एका single front controller, public/index.php, द्वारे प्रवेश करते, HTTP Kernel द्वारे एका stack आणि मधून एका पर्यंत चालवली जाते, आणि एक परत करते — त्यानंतर middleware चालते.
Responsepublic/index.php ── autoload + app bootstrap
▼
HTTP Kernel::handle($request)
▼
Bootstrappers ── env, config, providers (register + boot)
▼
Global middleware ── (TrustProxies, HandleCors, ...)
▼
Router dispatch ── route जुळवा
▼
Route / group middleware ── (auth, throttle, verified, ...)
▼
Controller (किंवा closure) ── तुमचे logic → एक Response परत करते
▼
Response ──▶ client
▼
Kernel::terminate ── terminable middleware (उदा. session save, logging)
index.php Composer autoload लोड करते आणि application container bootstrap करते.Request प्राप्त करतो आणि bootstrappers चालवतो: env + config लोड करा, service providers register आणि boot करा (इथेच framework आणि तुमचे bindings जोडले जातात).auth, throttle, verified) controller आधी चालते; प्रत्येक short-circuit करू शकते.Response परत करते (view, JSON, redirect). response परत बाहेर येताना middleware चे "after" logic चालते.Kernel::terminate पुढे ढकललेल्या कामासाठी terminable middleware चालवते.// app/Http/Middleware/Timing.php → 3/5. middleware
public function handle($request, Closure $next)
{
$request->attributes->set('started', microtime(true));
$response = $next($request); // पुढील layer / controller ला पास करा
$response->headers->set('X-Time', '...'); // "after" logic
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));
}
Laravel चे lifecycle service container आणि middleware pipeline भोवती बांधलेले आहे, त्यामुळे क्रम जाणून घेणे — bootstrap/providers, मग global middleware, मग routing, मग route middleware, मग controller, मग terminate — तुम्हाला auth, rate limiting, CORS, आणि cleanup नेमके कुठे आहेत हे सांगते. एखादी service inject होण्याआधी तिला एका provider मध्ये bind का करावी लागते, throttle तुमचा controller चालण्याआधी request का नाकारते, आणि वापरकर्त्याला वाट पाहावी लागू नये म्हणून मंद काम terminable middleware कडे कसे पुढे ढकलायचे हे ते स्पष्ट करते.
सविस्तर उत्तरांसह IT मुलाखत प्रश्नांचे ग्रंथालय — Junior पासून Senior पर्यंत.
देणगी द्या