导航

ASP.NET------ASP.NET引擎和HTTP Handler

Posted on 2009-07-24 17:41  鸡尾虾的壳  阅读(195)  评论(0编辑  收藏  举报

 当Request到达IIS Web Server时,IIS通过请求资源文件的后缀决定如何处理请求。如果是静态内容,如Html,CSS等,IIS直接响应并且返回HTML响应到客户端。如果是asp后缀,那么ASP引擎会处理。如果是aspx,那么ASP.NET引擎就发挥作用了。如果是asmx后缀,那么ASP.NET会生成SOAP Response并返回。对于动态内容,IIS把处理功能通过ISAPI接口委托给ASP.NET引擎。后者可以使用不同种类的HTTP Handler来处理特定类型的请求。

在IIS控制台上,开发者可以配置HTTP Handler。具体:Start->All Program->Administrative Tools->IIS Manager->Local Machine->Web Sites->Properties右键菜单->Home Directory->Congiguration在这个控制界面上,列出了所有的资源后缀和HTTPHandler直接的绑定关系。

开发者可以在C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\CONFIG目录下的web.config中查看。
很奇怪的是:在界面上居然看不到aspx项的绑定,但是在web.config中可以看到。也许这个是默认的吧。就不需要列出了。所有的HTTPHandler需要实现IHttpHandler接口。该接口中的方法ProcessRequest(HttpContext context)负责如何给客户端返回Response。对于ASP.NET页面来说,Page类本质上就是一个HttpHandler实例。

参考:http://msdn.microsoft.com/en-us/library/ms972953.aspx