在结束之前,让我们简短的回顾一下从IIS到handler的事件序列:
- IIS获得请求
- 检测脚本映射,映射到ASP.NET_isapi.dll
- 触发工作进程(ASP.NET_wp.exe 在 IIS5 或者 w3wp.exe 在 IIS6)
- .NET运行时加载
- IsapiRuntime.ProcessRequest()通过非托管代码调用
- IsapiWorkerRequest created once per request
- IsapiWorkerRequest 每一次请求创建一次
- HttpRuntime.ProcessRequest() called with Worker Request
- 通过传进Work Request, HttpContext对象被创建
- HttpApplication.GetApplicationInstance() called with Context to retrieve instance from pool
- HttpApplication.Init() 调用,并且启动管道事件序列,附加Modules和Handler
- 被调用,开始处理进请求
- 管道事件触发
- Handlers被调用,并且ProcessRequest 方法执行
浙公网安备 33010602011771号