کنترل صحیح خطای ۴۰۴ در asp.net
یکی از ملزوماتی که باید قبل از انتشار نهایی سایت مورد توجه قرار بگیره، هندل کردن خطای ۴۰۴ در قسمت customErrors فایل Web.Config هست که بیانگر عدم پیدا شدن صفحه ی درخواستی توسط کاربر هست. در این حالت هرگاه که کاربر صفحه ای رو درخواست کنه که وجود نداره، صفحه ای که در Web.Config تعیین شده برای اون نمایش داده میشه:
<customErrors defaultRedirect=”GenericError.htm” mode=”On”>
<error statusCode=”404″ redirect=”PageNotFound.htm”/>
</customErrors>
و اما…
حال در نظر بگیرید که صفحه وجود داره اما Query String ای که به اون پاس داده شده نامعتبر هست یا اصلاً Query String ای وجود نداره! (کاربر شیطون زیاد پیدا میشه http://brad.barnamenevis.org/wp-incl.../icon_wink.gif )
از اونجایی که صفحه وجود داره، صفحه ای که در حالت ۴۰۴ تعیین شده نمایش داده نمیشه! در این حالت باید خطا رو برنامه نویس تولید کنه تا اون صفحه نمایش داده بشه:
throw new HttpException(404, “Sheytooni Nakon Kocholoo!”);
نقل از بهروز راد