PHP Academy · पाठ

Middleware से रूट सुरक्षित करना

रूट सुरक्षित करने और उपयोगकर्ताओं को रीडायरेक्ट करने के लिए auth और guest middleware का उपयोग करें

पाठ 2, कुल 4 में से13 चरण

Middleware से रूट सुरक्षित करना, CoddyKit पर PHP Academy का एक निःशुल्क पाठ है। यह 4 में से 2वाँ पाठ है। आप नीचे पूरा पाठ निःशुल्क पढ़ सकते हैं—फिर अंतर्निहित कोड संपादक और 24/7 एआई ट्यूटर के साथ ब्राउज़र में इसका व्यावहारिक अभ्यास कर सकते हैं। यह PHP Academy सीखने के मार्ग का हिस्सा है और आपकी प्रगति वेब तथा CoddyKit ऐप पर सिंक होती रहती है। PHP Academy पाठ्यक्रम में कुल 4 पाठ शामिल हैं।

मिडलवेयर क्या है

मिडलवेयर वह कोड है जो किसी HTTP अनुरोध के कंट्रोलर तक पहुँचने से पहले या उसके बाद चलता है। इसका उपयोग प्रमाणीकरण, लॉग दर्ज करने, CORS, दर सीमित करने आदि के लिए किया जाता है।

अंतर्निहित प्रमाणीकरण मिडलवेयर

auth मिडलवेयर अप्रमाणीकृत उपयोगकर्ताओं को लॉगिन पृष्ठ पर भेज देता है (या API अनुरोधों के लिए 401 लौटाता है)।

<?php
Route::get("/dashboard", [DashboardController::class, "index"])
    ->middleware("auth");

समूहों पर मिडलवेयर लागू करना

मार्गों के पूरे समूह को एक साथ सुरक्षित करें।

<?php
Route::middleware(["auth", "verified"])->group(function () {
    Route::get("/dashboard", [DashboardController::class, "index"]);
    Route::get("/profile",   [ProfileController::class, "show"]);
});

guest मिडलवेयर

guest मिडलवेयर प्रमाणीकृत उपयोगकर्ताओं को लॉगिन या पंजीकरण पृष्ठों से दूर भेज देता है।

<?php
Route::middleware("guest")->group(function () {
    Route::get("/login",    [LoginController::class, "create"]);
    Route::get("/register", [RegisterController::class, "create"]);
});

कस्टम मिडलवेयर बनाना

Artisan से इसे बनाएँ और handle() विधि लागू करें।

$ php artisan make:middleware EnsureSubscribed

कस्टम मिडलवेयर तर्क

जारी रखने के लिए अगला अनुरोध लौटाएँ या प्रक्रिया रोकने के लिए कोई प्रतिक्रिया लौटाएँ।

<?php
public function handle(Request $request, Closure $next): Response
{
    if (!$request->user()?->isSubscribed()) {
        return redirect("/subscribe");
    }
    return $next($request);
}

मिडलवेयर पंजीकृत करना

Laravel 10 में app/Http/Kernel.php या Laravel 11 और उसके बाद के संस्करणों में bootstrap/app.php में मिडलवेयर उपनाम पंजीकृत करें।

<?php
// Laravel 11+ bootstrap/app.php:
->withMiddleware(function (Middleware $m) {
    $m->alias(["subscribed" => EnsureSubscribed::class]);
})

मिडलवेयर पैरामीटर

कोलन का उपयोग करके मिडलवेयर को पैरामीटर भेजें।

<?php
Route::middleware("role:admin")->group(function () {
    // ...
});
// In middleware handle():
public function handle(Request $request, Closure $next, string $role): Response

अनुवर्ती मिडलवेयर

$next($request) के बाद का कोड प्रतिक्रिया तैयार होने के बाद चलता है — यह लॉग दर्ज करने और प्रतिक्रिया में बदलाव करने के लिए उपयोगी है।

<?php
public function handle(Request $request, Closure $next): Response
{
    $response = $next($request); // controller runs here
    $response->headers->set("X-App", "Laravel");
    return $response;
}

मिडलवेयर प्राथमिकता

मिडलवेयर के चलने का क्रम महत्वपूर्ण होता है। वैश्विक मिडलवेयर (जैसे TrimStrings) मार्ग मिडलवेयर से पहले चलता है।

दर-सीमा मिडलवेयर

Laravel में throttle मिडलवेयर के माध्यम से दर सीमित करने की सुविधा शामिल है।

<?php
Route::middleware("throttle:60,1")->group(function () {
    // 60 requests per 1 minute
});

सारांश

मिडलवेयर HTTP अनुरोधों को फ़िल्टर करता है। मार्गों को सुरक्षित करने के लिए auth लागू करें, व्यावसायिक नियमों के लिए कस्टम मिडलवेयर बनाएँ और मिडलवेयर को सुव्यवस्थित रूप से साझा करने के लिए मार्गों को समूहित करें।

त्वरित जाँच

अप्रमाणीकृत उपयोगकर्ताओं के लिए auth मिडलवेयर क्या करता है?

शुरुआत निःशुल्क

एआई शिक्षक के साथ PHP सीखें — निःशुल्क

अपने ब्राउज़र में वास्तविक कोड लिखें और चलाएँ, चौबीसों घंटे एआई शिक्षक से तुरंत सहायता पाएँ, और वेब या ऐप पर वहीं से शुरू करें जहाँ आपने छोड़ा था।

पाठ्यक्रम
49
पाठ
195

अक्सर पूछे जाने वाले प्रश्न

क्या “Middleware से रूट सुरक्षित करना” पाठ निःशुल्क है?

हाँ—“Middleware से रूट सुरक्षित करना” का पूरा पाठ यहाँ वेब पर निःशुल्क पढ़ा जा सकता है। इंटरैक्टिव अभ्यास (अंतर्निहित कोड संपादक और 24/7 एआई ट्यूटर) करने और PHP Academy पाठ्यक्रम का बाकी हिस्सा अनलॉक करने के लिए CoddyKit PRO लें। PHP Academy पाठ्यक्रम में कुल 4 पाठ शामिल हैं।

“Middleware से रूट सुरक्षित करना” में मैं क्या सीखूँगा?

रूट सुरक्षित करने और उपयोगकर्ताओं को रीडायरेक्ट करने के लिए auth और guest middleware का उपयोग करें आप ब्राउज़र में सीधे चलाए जाने वाले व्यावहारिक कोड के साथ PHP Academy का अभ्यास करते हैं, और पाठ पूरा करते समय 24/7 एआई ट्यूटर आपके प्रश्नों के उत्तर देता है।

क्या PHP Academy शुरू करने के लिए मुझे किसी अनुभव की आवश्यकता है?

पहले के अनुभव की आवश्यकता नहीं है। CoddyKit पर PHP Academy शुरुआती से लेकर उन्नत शिक्षार्थियों तक सभी के लिए व्यवस्थित किया गया है, इसलिए आप यहीं से या शुरुआत से सीखना शुरू कर सकते हैं और अपनी गति से आगे बढ़ सकते हैं। यह 4 में से 2वाँ पाठ है।

“Middleware से रूट सुरक्षित करना” पाठ पूरा करने में कितना समय लगता है?

CoddyKit का अधिकांश पाठ लगभग 5–10 मिनट में पूरा हो जाता है। हर पाठ छोटा और संवादात्मक है, इसलिए आप लगातार प्रगति करते हैं और वेब या ऐप पर वहीं से सीखना जारी रख सकते हैं जहाँ आपने छोड़ा था।

क्या मैं इस PHP Academy पाठ में कोड लिख और चला सकता हूँ?

हाँ। हर PHP Academy पाठ में एक अंतर्निर्मित कोड संपादक शामिल है, जिससे आप सीधे अपने ब्राउज़र में वास्तविक कोड लिख और चला सकते हैं और तुरंत एआई प्रतिक्रिया पा सकते हैं—स्थानीय सेटअप की आवश्यकता नहीं है।

इस पाठ्यक्रम के सभी पाठ

  1. Laravel Breeze से प्रमाणीकरण
  2. Middleware से रूट सुरक्षित करना
  3. Gates: सरल प्राधिकरण जाँच
  4. Policies: मॉडल-आधारित प्राधिकरण
← PHP Academy पर वापस जाएँ