Custom Errors در Asp.Net

در این مقاله قصد داریم درباره انواع custom Errors ها در Asp.Net صحبت کنیم و همچنین توضیحی درباره ایجاد صفحاتی که بتوان در آن خطا های احتمالی که هر سایت با آن روبه رومیشود را صحبت کنیم.

Custom Errors در Asp.Net

گاهی اوقات پیش می اید که برنامه در حین اجرا یا زمان طراحی با خطا روبرو میشود که این خطا ، بخشی از کد را به نمایش میگذارد که برنامه نویس با توجه به آن میتواند مشکل به وجود آمده در برنامه را حل کند حال اگر این خطا که بخشی از کد را به نمایش میگذارد به دست هکرها بیفتد به راحتی سایت را هک میکنند برای جلوگیری از آن ها باید برای تمام خطا های احتمالی یک صفحه ایجاد کرده و  کاربر را به آن صفحات بفرسیتم.

در این قسمت  جدولی از برخی خطا ها را برای شما به نمایش میگذاریم.

خطا 400: این خطا زمانی رخ میدهد که درخواستی که از سمت کاربر وارد شده در سایت وجود ندارد

خطا 403:به این خطا، خطای ممنوع  (forbidden)گفته میشود که این خطا از سمت سرور است

 

خطا 404: صفحه مرود نظر کاربر پیدا نشده است .

خطا 405:  به این معناست که متد استفاده شده توسط کاربر برای ارسال درخواست از سمت سرور مجاز نمیباشد.

خطا 408: زمانی رخ می دهد که سرور در انتظار درخواست از  کاربر است، اما هیچ پاسخی در زمان استاندارد دریافت نمی شود، به این صورت سرور کد 408 را ارسال می کند وکاربر می تواند مجددا و در دفعات بعدی درخواست خود را ارسال کند.

خطا 500: کد 500 به معنی وقوع یک خطای داخلی در سرور است

حال در این پارت از آموزش قصد داریم بیاموزیم که وقتی برنامه ای با این خطا ها روبروشد چگونه کاربر به   صفحه ای که خود برنامه نویس ایجاد کرده هدایت کنیم

وقتی صفحه ای دریک سایت وجود نداشته باشد عمدتا با خطای زیر روبه رو میشویم در اینجا من صفحه ای به نام students.aspx ندارم که با خطای زیر روبه رو شده است

 

وقتی کاربر عادی با این صفحه روبرو شود درک صحیحی از مشکل به وجود آمده نمیکند  بنابراین ما نیاز به یک صفحه کاربر پسند  (user-friendly)  داریم که خود برنامه نویس آن را ایجاد کرده باشد .

حال برای رفع این مشکل ابتدا یک صفحه از هر نوعی (html, webform,..) ایجاد کرده و آن را به  صورت دلخواه خود طراحی کنیم در این مثال  نام صفحه ای  که ما طراحی کردیم  error.aspx  است

حال در Web.confing رفته  ودر قسمت <system.web>برای فعال کردن  صفحاتی که میخواهیم به کابر به عنوان مشکل پیش آمده نشان دهیم خاصیت <customErrors >را فعال میکنیم

<customErrors mode="On">  
   <error statusCode="404" redirect="error.aspx"/>  
</customErrors> 

 

custom Errors ها  خاصیتی به نام mode دارند که سه نوع پارامتر میگیرد که به شرح آن ها میپردازیم

mode=On : باعث فعال شدن CustomErrors  و فرستادن کاربر به صفحه موردنطر میشود

Off: غیر فعال شدن customError میباشد

REMOTE ONLY:این خاصیت برای نشان دادن صفحه موردنظر برای کاربران local به کار میرود