asp打开网站原理

因为对如何请求网站的有疑问,所以查了一些资料并画了一张图进行分析。

在解释这张图之前,先了解一下以下相关知识:

(1)内核模式:也可以叫管理员模式,主要运行底层的驱动和监视程序等,如果这里出了问题,一般不是蓝屏就是死机。

(2)用户模式:一般由你打开的程序或者线程,但如果调用系统服务时,会转入内核模式。

(3)http.sys:能够让任何应用程序通过它提供的接口,以http协议进行信息通讯,是一个删不掉的系统核心组件。

(4)W3svc服务:W3SVC的任务是根据配置数据的设置创建和监视工作线程,由工作线程运行Web网站应用。

图的解释:

(1)在浏览器URL中输入网址,发送http请求,内核模式中的http.sys就可以监控到浏览器发送的请求。但这个服务并不能直接来处理这个请求,它需要通知W3svc服务。

(2)W3svc服务在接收到通知之前,会先将IIS中所有的配置放到http.sys请求队列中,来了通知以后,判断一下应用程序池是否启动进程。

(3)如果应用程序池已经启动进程,W3svc服务会让应用程序池去http.sys队列中去拿所有的配置。

(4)最后工作进程打开网站。

时间: 2024-08-25 00:03:49

asp打开网站原理的相关文章

Asp.Net网站的的编译与发布原理

如下所示创建一个简单的asp.Net Web应用程序 在VS中生成解决方案之后,可以在项目的目录下看到以下的文件: 当我们通过VS将网站发布出去之后,可以看到,最后生成的文件,如下图所示: 我们可以发现,发布之后的项目文件夹内少了很多文件,其实这是VS将aspx页面和一般处理程序以及Global文件等的后台文件都编译成了一个dll文件,这个dll文件存放在bin文件夹内: 对这个程序集进行反编译之后,可以看到我们写的后台代码都编译到这个dll文件中了 这个是一般处理程序的ProcessReque

搭建调用 WebService 的 ASP.NET 网站 (VS2010, C#)

[系统环境]Windows 7 / 2008r2 [软件环境]Visual Studio 2010 [开发语言]C# [感谢]本文是在 <C#开发和调用Web Service> 一文的基础上做了少许修改及补充后整理所得. 1. WebService 1.1 基本概念 Web Service也叫XML Web Service Web Service是一种可以接收从Internet或者Intranet上的其它系统中传递过来的请求,轻量级的独立的通讯技术.是:通过SOAP在Web上提供的软件服务,使

windows 2008安装IIS7支持ASP动态网站

1.打开服务器管理器,(也可以点击程序和功能,打开或关闭windows功能),点击操作-添加角色.2.展开服务器管理器,点击角色-Web服务器(IIS),在右边的窗口找到ASP(未安装),再点击右边添加角色服务进行安装.3.点击控制面板-管理工具-Internet 信息服务(IIS) 6.0 管理器,点击你要配置的网站点(可以添加网站),在右边找到ASP,然后双击打开功能,将启用父路径的"Flase"改为"True".4.双击打开MIME类型,点击添加.ASP,MI

NET Core环境并创建运行ASP.NET网站

kungge 在Windows系统搭建.NET Core环境并创建运行ASP.NET网站 微软于6月27日在红帽DevNation峰会上 正式发布了.NET Core 1.0.ASP.NET 1.0和Entity Framework Core 1.0,其将全部支持Windows.OS X和Linux操作系统.其中.NET Core最受瞩目,为一款跨平台.开源且模块化的.NET平台,可以用来搭建web应用.微服务.创立应用库和控制台. ASP.NET 5已被微软改成了 ASP.NET Core 1

asp.net网站服务器搭建之从零开始

asp.net网站服务器搭建之从零开始 一 IIS(Internet Information Services)安装:  1.选择"控制面板".  2.点"添加或删除程序".   3.选择"添加/删除Windows组件",选中IIS,把系统安装盘放到光驱中,点下一步就可以了.  4. 安装成功后,“控制面板\管理工具”里会有“Internet 信息服务”一项. 二 asp.net环境配置:  下载地址:http://www.cnblogs.com

IE10、IE11 User-Agent 导致的 ASP.Net 网站无法写入Cookie 问题

你是否遇到过当使用一个涉及到Cookie操作的网站或者管理系统时,IE 6.7.8.9下都跑的好好的,唯独到了IE10.11这些高版本浏览器就不行了?好吧,这个问题码农连续2天内遇到了2次.那么,我们就来看看,这个问题的前因后果. 先说下这2次的使用场景,一次是在某页面中,先存Cookie,然后再入库记录相关数据,但是发布到生产环境后,入库操作没有发生:后来通过打印日志发现问题卡在这里: if (Request.Browser.Cookies) 也就是说,在客户端是IE10的环境下,这里返回Fa

如何在IIS6,7中部署ASP.NET网站(转载)

阅读目录 查看web.config文件 在IIS中创建网站 IIS6 添加扩展名映射 IIS6 无扩展名的映射 目录的写入权限 SQL SERVER的配置 在IIS7中部署ASP.NET程序 80端口和域名 查看web.config文件 web.config通常会放在网站的根目录,这个文件中包含了一最重要的网站运行参数.比如: connectionStrings,httpHandlers,httpModules ,这些参数都是网站开发人员认为运行网站所必需的参数. 因此,如果我们想将一个网站部署

26种提高ASP.NET网站访问性能的优化方法 .

1. 数据库访问性能优化 数据库的连接和关闭 访问数据库资源需要创建连接.打开连接和关闭连接几个操作.这些过程需要多次与数据库交换信息以通过身份验证,比较耗费服务器资源. ASP.NET中提供了连接池(Connection Pool)改善打开和关闭数据库对性能的影响.系统将用户的数据库连接放在连接池中,需要时取出,关闭时收回连接,等待下一次的连接请求. 连接池的大小是有限的,如果在连接池达到最大限度后仍要求创建连接,必然大大影响性能.因此,在建立数据库连接后只有在真正需要操作时才打开连接,使用完

ASP.NET运行原理

1,ASP.NET运行原理: 客户端向服务器发出请求 → 服务器处理请求→ 处理好的数据以报文发给浏览器 → 浏览器显示请求结果 2,Chrome浏览器,查看请求过程:F12打开浏览器的调试窗口: 3,添加一般处理程序,查看 请求→处理→响应 的过程 // ProcessRequest中,对请求做出处理后返回数据 public void ProcessRequest(HttpContext context) { //context.Response.ContentType = "text/pla