صفحات ASP.NET به طور پیش فرض پسوند aspx دارند. اگر دوست داشته باشید که پسوند دلخواهی برای فایل ها داشته باشید به شکل ذیل عمل کنید:
بر روی نام سایت در IIS راست کلیک کنید، Properties رو انتخاب کنید. بر روی دکمه ی Configuration کلیک کنید.
بر روی Add کلیک کنید. در قسمت Executable، مسیر ذیل رو با توجه به سیستم خودتون وارد کنید:
C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\aspn et_isapi.dll
در قسمت Extension، نام پسوند دلخواه رو وارد کنید. مثلاً:
ali.
Limit to رو برابر با GET,HEAD,POST,DEBUG قرار بدید و Script engine رو تیک بزنید.
بر روی هاست های Shared هم تنها راه چاره همینی هست که عرض کردم.
شما با این کار به IIS میگید که نوع پسوند سفارشی که من واست مشخص می کنم رو جهت پردازش از فیلتری که در ISAPI واست مشخص می کنم عبور بده نه به صورت معمولی و بدون دخالت ASP.NET! ما این فیلتر رو aspnet_isapi.dll تعیین می کنیم که وظیفه ی پردازش منابع ASP.NET رو بر عهده داره.
در این حالت، فایل ali. هم در چرخه ی حیات پردازش صفحه وارد میشه و مثلاً می تونید با یک Http Module بر روی اون کنترل داشته باشید.
مثلاً اگر به سایت CodeProject.com دقت کرده باشید، لینک مستقیم برای دانلود پروژه ها وجود داره اما اگر لوگین نکرده باشید نمی تونید دانلود کنید! چون سایت CodeProject.com، فایل های ZIP رو توسط IIS هندل می کنه.