مدیریت خطای ۴۰۴ در Asp.net Core

مدیریت خطای 404 در Asp.net Core

خواندن این مطلب

3 دقیقه

زمان میبرد!

مقدمه

سلام خدمت کاربران سایت نونویسان در این مقاله میخواهیم مدیریت خطای ۴۰۴ در Asp.net Core را به شما آموزش بدهیم که کاربرد های زیادی دارد و اصلا نباید پشت گوش بندازید در ادامه با ما همراه باشید تا روش مدیریت و کاربردهای این خطا را به شما بگم.
در صورت تمایل میتوانید مقاله آموزش احراز هویت در Asp.net Core را نیز مشاهده کنید

چرا صفحه مدیریت ارور ۴۰۴ نیاز است

ممکن است که کاربر شما به هر دلیلی Url را تغییر دهد و وارد صفحه ای شود که وجود ندارد در این مرحله وظیفه شما است که به کاربر ۴۰۴ نمایش دهید تا بفهمد چنین صفحه ای وجود ندارد از طرفی در ابزار های سئو صفحه ۴۰۴ اختصاصی تاثیر مثبت در سئو سایت دارد و در کل بهتر است که هر سایت صفحه مدیریت خطای ۴۰۴ را داشته باشد

مدیریت خطای ۴۰۴ در Asp.net Core

حالا برین سراغ اینکه به چه شکل در سایت Asp.net Core ارور ۴۰۴ را مدیریت کنید اول وارد فایل Startup میشوید کد کد زیر را در بخش Configure بعد کد if قرار میدهید

				
					app.Use(async (context, next) =>
    {
        await next();
        if (context.Response.StatusCode == 404)
        {
                context.Request.Path = "/NotFound";
                await next();
        }
    });
				
			

کد بالا بیانگر این است که اگر کاربر وارد صفحه ای شد که وجود نداشت به یک آدرس در مسیر NotFound/ هدایت شود پس باید یک Controller و Action بسازید که میتوانید از HomeController هم استفاده کنید

				
					[Route("NotFound")]
    public IActionResult Error404()
    {
        return View();
    }
				
			

به Action مورد نظر Route میدهیم و آدرس صفحه را NotFound انتخاب میکنیم اگر قالب شما صفحه اختصاصی ۴۰۴ داشت در View این Action وارد کنید در غیر این صورت خودتان با خلاقیت یک صفحه ایجاد کنید

مدیریت خطای ۴۰۴ در Asp.net Mvc

تفاوت این دو نسخه در تنظیمات است مگرنه هر دو نیاز به Controller و Action دارند تا بتوانند یک View برای نمایش ایجاد کنند برای Mvc وارد فایل Web.Config شوید و در بخش Configuration کد زیر را وارد کنید

				
					<system.web>
    <customErrors mode="On" >   
      <error statusCode="404" redirect="~/Errors/Error404" />      
    </customErrors>   
  </system.web>
				
			

در این بخش لازم نیست به Action قابلیت Route بدهید چون نوشته شده وقتی کاربر وارد جایی شد که وجود نداشت برو به Errors/Error404 پس یک Controller به اسم Error و یک Action به اسم Error404 میسازید.

در این آموزش مدیریت خطای ۴۰۴ در Asp.net Core را یاد گرفتید اگر سوالی داشتید در بخش تماس با ما و یا کامنت مطرح کنید.

به مقاله امتیاز دهید

درباره نویسنده



نظرات کاربران



دیدگاهتان را بنویسید

مطالب مرتبط