A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 瞎猫馒头米田共 中级黑马   /  2013-8-29 17:34  /  1603 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

在iis6中,http.sys是怎么到iis中的w3svc.exe(在寄进程svchost.exe中),然后到iis内部的InetInfo.exe(这个是不是可以当做iis中的过滤插件),如果是静态的就直接原路封装后返回,如果不是,通过这个(inetinfo.exe)判断的?走到进程w3wp.exe中处理,这里头分为两部分一部分是aspnet_isapi.dll,这是托管由托管到非托管的桥梁把句柄ecb传递给第二部分freamworkruntime的ISApiRuntime.ProcessRquest()方法,这个方法中通过句柄ECB创建了HttpWorkRquest对象,这个对象封装了收到的报文,然后把这个对象传递给HttpRuntime(),在这个方法中通过HttpWorkRquest封装了HttpContext对象(里头有HttpRquest类型的属性和HttpResponse类型属性,这两个类封装了收到报文和要发出去的报文的信息),最后通过对象池拿到一个HttpApplication对象,这个对象里头有23个事件(?),19个由开发人员注册,(那么通过把HttpContext传入处理HttpContext.HttpResponse中的内容就可以Socket.Send返回到iis中进而返回到http.sys进行封装(包头。。)然后传到端口通信进行通信了)而这个括号内的过程是在第8个事件中,通过反射得到的HttpHander实例在这个实例中进行方法(PR方法)调用处理的。
这个过程对不对,如果对的话asp生命周期指的是哪一部分?

评分

参与人数 1技术分 +1 收起 理由
赵宗荣 + 1

查看全部评分

1 个回复

倒序浏览
http://msdn.microsoft.com/zh-cn/library/ms178473  可以看下这个。刚找到的
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马