如何将文件扩展名映射到asp.net中

asp.net支持的一个高级(但并不难)选项是将自定义的文件扩展名映射到asp.net资源中.比如,对于asp.net页面不用扩展名.aspx而是采用扩展名.renyu,为了确保asp.net 支持Default.renyu必须进行如下两种修改:

第一,必须在web.config文件或machine.config文件的<httpHandlers>部分创建下面的新条目.

<configuration>

    <system.web>

        <httpHandlers>

        <add verb="*" path="*.renyu" type="System.Web.UI.PageHandlerFactory,System.Web" />

        <httpHandlers>

    </system.web>

<configuration>

第二,必须通知IIS以扩展名.renyu把请求发送到asp.net.这是通过IIS Microsoft Management Console完成的.

打开IIS MMC,右击web根目录或web应用程序文件夹(如果只想映射到一个应用程序中的话),然后选择Properties选项.打开对话框之后,单击Configuration按钮,选择App Mappings选项卡.

该选项卡给出了IIS映射到ISAPI扩展名的所有扩展名.ISAPI是一个低级的API,这允许将自定义的应用程序插入到IIS中.以前ASP使用名为asp.dll的ISAPI,如今ASP.Net使用名为aspnet_isapi.dll的ISAPI.Asp.Net ISAPI只负责接收来自IIS的请求,并把他们传递给ASP.net.如果想让asp.net处理.renyu扩展名,就需要将它映射到aspnet_isapi.dll上,以便IIS把请求发送给ASP.NET.

要添加该应用程序,请单击Add按钮,打开Add/Edit Application Extension Mapping对话框.然后给目录C:\[WinNt]Microsoft.NET\Framework\[version]中的asp.net ISAPI(aspnet_isapi.dll)命名.还可以给扩展名.renyu命名.

另附asp.net文章:http://forums.asp.net/938703/ShowPost.aspx

posted @ 2014-09-25 17:12  kakake  阅读(572)  评论(0编辑  收藏  举报