打赏

关于浏览器和IIS基础的简单理解

    浏览器 输入域名或者IP地址,按回车访问后;发生了什么??IIS是如何工作的?为什么能这么工作??

    1    浏览器和IIS 分别是两个应用程序;浏览器访问网址实际就是  两个应用程序的数据交互往来;

 

     2    浏览器和IIS 是靠什么进行数据交互往来?是soket通信

 

     3    浏览器和IIS 通信的具体内容是什么?是http协议,以及具体的html标签,浏览器会根据html标签渲染成具体的页面;

 

     4    浏览器和IIS 通信的地点是什么;每个电脑的应用程序很多,如果让浏览器和IIS进行通信,说白了就是如何让浏览器和IIS能够联系上;是80端口,浏览器请求默认的是80端口,换句话说就是浏览器去敲80端口的门,IIS才会开门;当然IIS也可以定义其他端口如801端口;每个电脑有65533个端口;只要端口在1-65533的范围内就是合法的端口;IIS 会监测80端口的请求的;

 

      5    浏览器向IIS请求 html静态页面和请求aspx动态页面有什么区别;

        请求静态页面:IIS根据请求的文件路径,例如www.domind.com/a/index.html ;根据路径找到文件通过soket直接返回给客户端(浏览器);

        请求.aspx或.ashx页面: IIS看到是aspx.ashx类型文件会主动去找组件aspnet_isapi.dll,由这个aspnet_isapi.dll组件去生成html标签通过soket返回给客户端(浏览器);

 

     6      aspnet_isapi.dll组件又是如何工作的??


         A aspnet_isapi.dll 通过管道将请求发给IIS进程,HTTPRunTime会监测到这个请求


        B  HTTPRunTime类确定请求的页面名称(就是类的名称,在asp.net中一个页面就是一个类),HttpRuntime通过公共接口IHttpHandler调用请求类的实例

 

        C  由HttpApplication Factory负责返回HttpApplication实例。 

 

        D HttpApplication实例会读取web.config中所有HttpModule的配置。 

 

        E HttpApplication对象使用IHttpHandlerFactory类型的实例返回HttpHandler(http处理程序)给HttpRuntime对象。

 

        F 最后由HttpRuntime对象调用IHttpHandler的页面对象的ProcessRequest方法。


posted on 2018-04-09 00:23  法尔克斯  阅读(904)  评论(0编辑  收藏  举报

导航

打赏