• 【总结】从客户端请求页面(aspx)到web服务器上执行的过程


    看了两个前辈的文章《ASP.NET架构分析》、《浅谈ASP.NET的内部机制(一)》,自己做的一些总结,不过也不知道是否完全正确,有错误的地方希望牛人可以指出!

    执行顺序为:

    1、客户端请求web页(如:aspx页)-->2、IIS服务器中的http.sys(验证请求的url,阻止了不合法的url请求,减轻了服务器的压力)-->3、IIS是只能识别.html文件的,当IIS遇到非.html时(如aspx),IIS将其交给ISAPI筛选器来处理--> 4、ASP.NET服务在注册到IIS的时候,会把每个扩展可以处理的文件扩展名注册到IIS里面(如:*.aspx,*.php等),扩展启动后,就根据定义好的方式来处理IIS所不能处理的文件,然后把控制权跳转到专门处理代码的进程中(如*.aspx由aspnet_isapi.dll来处理)-->5、由aspnet_isapi.dll进入ASP.NET运行时

    说明:第4步因为.net与系统结合所以在ISAPI筛选器没有体现。比如要支持php页面,应先在ISAPI筛选器添加执行文件,然后再到ISAPI扩展里面添加扩展名.php。

    以上让我们了解了客户端是如何和服务器端进行交互的,下面我们可以来看看服务器端到底是怎样来处理客户端的请求(也就是接第5步后的处理过程):

    未完待续......

    其它说明:

    aspnet_isapi.dll执行aspx页面,他可以做两件事,先执行ISAPI过滤器的一些操作,如验证权限,用户名密码等,再执行aspx页面。

    1、ISAPI过滤器可以在web.config进行配置,对应节点为<httpModules></httpModules>

    2、ISAPI扩展可以在web.config进行配置,对应节点为<httpHandlers></httpHandlers>

  • 相关阅读:
    POJ 3977 折半枚举
    [CQOI2007]余数求和 (分块+数学
    NOI P1896 互不侵犯 状压DP
    HDU 5446 Unknown Treasure (卢卡斯+CRT
    宁夏邀请赛F FLOYD
    P1414 又是毕业季II (数学?
    P2051 [AHOI2009]中国象棋 DP
    POJ 2449:Remmarguts' Date(A* + SPFA)
    HDU 6215:Brute Force Sorting(链表+队列)
    HDU 6207:Apple(Java高精度)
  • 原文地址:https://www.cnblogs.com/SALIN/p/1950617.html
Copyright © 2020-2023  润新知