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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 无__畏 中级黑马   /  2013-6-5 11:21  /  1381 人查看  /  6 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 无__畏 于 2013-6-5 15:53 编辑

老师说,请求进入iis后,iis可以处理得了html.js.css等静态文件,  ashx,aspx等动态处理不了的才进入.net运行池
为什么,自定义httpmodule以后,html、js、css也都进入了httpmodule管道里呢?

是哪里我理解错了么?



6 个回复

倒序浏览
当一个HTTP请求到达HttpModule时,整个ASP.NET Framework系统还并没有对这个HTTP请求做任何处理,也就是说此时对于HTTP请求来讲,HttpModule是一个HTTP请求的“必经之路”
你可以看看这篇文章:http://www.cnblogs.com/tangself/archive/2011/03/28/1998007.html
回复 使用道具 举报
胡章诚 发表于 2013-6-5 11:44
当一个HTTP请求到达HttpModule时,整个ASP.NET Framework系统还并没有对这个HTTP请求做任何处理,也就是说 ...

那么为何又说
       当IIS可以处理的静态文件就直接返回呢?  这个怎么理解
      
回复 使用道具 举报
好吧,那个说法有问题,应该这样说:
HTTP请求首先到达硬件服务器,通过端口到达IIS,IIS判断被请求的页面是否能被浏览器处理,如果可以,就直接返回
如果不能,不对该请求进行任何处理,直接进入asp.net程序的处理引擎(HttpModule是这个HTTP请求的“必经之路”),里面会对各种代码经行编译,得到一系列类似于静态页面的代码,将其返回给IIS,并且由IIS返回到客户端

说的有点抽象,是百度以后我自己理解得到的结果,望各位大神指正,或者完善
回复 使用道具 举报
好吧,我这么想。  IIS判断被请求的页面是否能被浏览器处理,如果可以,就直接返回(它只是没有被.net运行池处理请求?但还是经过了HttpModule?)

通过端口到达IIS——IIS判断被请求的页面是否能被浏览器处理——如果可以,就直接返回    这个“直接返回”,还是经过了HttpModule”
回复 使用道具 举报
应该没有吧,我的意思是由IIS直接返回给客户端了,就没有经过那个端口了,这个通道应该是出于IIS与.net程序处理引擎的一个通道,我是这么想的,等下看能不能叫 吕叶老师 过来看看
回复 使用道具 举报
嗯嗯,求老师指导!!!

通过端口到达IIS——IIS判断被请求的页面是否能被浏览器处理——如果可以,就直接返回   但是它为什么还进入Httpmodule中呢

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马