ASP.NET 开发番外系列一:Html与Ashx

1:当你在浏览器输入:http://www.cyqdata.com 的时候,这时候,浏览器会根据Http协议,按协议组装成相应的数据,然后发往指定的服务器。

 

然后数据是怎么发送到服务器的,具体过程可以看:Web开发,浏览器通讯原理及流程那点事,你应该听说下

再然后,数据千新万哭的传到你服务器来了。

 

2:你服务器上有个IIS,正在监听着(默认)80端口。

IIS收到有一个请求后,根据协议,分解字符串,解析出种参数。

首先是网址对应的Host,根据Host丢给IIS上对应绑定域名的站点去处理。

然后对应的站点收到转来的请求后,开始分析网址的后缀,因为不同的网址,决定着不同的ISAPI筛选程序处理过。

对应于ASP.NET就是aspnet_isapi.dll 

而指定某种后缀用哪种dll去处理的过程,IIS上叫处理程序映射

比如*.aspx、*.ashx等.net相关的后缀默认就映射到aspnet_isapi.dll。 

所以,如果你想用asp.net统一管理没有后缀,或随便乱取的后缀,就需要添加叫通用映射(就是*.*)到aspnet_isapi.dll去。

OK,上面的过程简化就是说:

浏览器发送网址->IIS接收->分给绑定域名的网站->网站根据后缀调用isapi.dll来处理。

然后aspnet_isapi经过各种流程及初始化对象,最终留下了两个最基础接口:

IHttpModule和IHttpHandle

到这里,ASP.NET平台就完成了,剩下的主是基于这两接口,写不同的插件,类似于插件开发。

 

当然,第一个插件,就是Web Forms插件了,并且默认集成进去了,之后就是WebForms插件的世界了。

之后的宣传,直接把WebForm站点,就叫ASP.NET网站(从VS创建网站项目上的名称就可以看出来),这个插件就成了ASP.NET的代表。 

 

自从微软出了MVC,才修正了这一说明,原来创建的ASP.NET网站,被改名为ASP.NET Web Forms网站。

 

包括早期VS IDE环境创建网站时,都把这个WebForm站点称为

 

一:如果没有ASP.NET、JSP、PHP等后台语言,网页是怎样的?

版权声明:本文原创发表于博客园,作者为路过秋天,原文链接:

http://www.cnblogs.com/cyq1162/archive/2012/12/29/2838371.html

时间: 2024-08-31 17:42:59

ASP.NET 开发番外系列一:Html与Ashx的相关文章

QBlog V2.5 源码开放下载(ASP.NET 番外系列之开端)

QBlog简介: QBlog:是一个套博客系统,开源.支持多用户.多语言.及方便的多数据库切换. QBlog下载:http://www.cyqdata.com/download/article-detail-427 QBlog演示:你点击下载所看到秋色园,就是QBlog的进化版本. 掌握QBlog原理及开发的意义?  QBlog是能帮助你真正意义的掌握ASP.NET开发的一套系统. 它没有WebForm,没有MVC,它让你明白,ASP.NET本质并没有控件的概念.   你应该知道,也许你已经知道

【微信Java开发 --番外篇】错误解析

虽然在微信开发过程中,会有微信公众平台开发者文档中的<全局返回码>作为错误的参考对比:但是依旧的,会觉得有时候的问题莫名其妙.[注:本人使用weixin-java-tools进行开发] 下面吧微信开发过程中碰到的各种问题做一个归类[注:错误总结会在开发过程中一一补充]   一.自定义菜单---错误集合 1.创建自定义菜单{"errcode":40019,"errmsg":"invalid button key size hint: [a90Wa

服务器-开发板外网连接 局域网可以通信

问题描述 开发板外网连接 局域网可以通信 开发板可以ping通百度 但与电脑服务器程序连接不了 pc客户端可以和服务器连接 程序用qt写的 外网连接 局域网已经可以通信 解决方案 电脑服务器,是公网的 IP,还是局域网的 IP? 如果是公网,应该与 百度 等是一样的,可以通讯才对!这个问题与使用什么开发的程序没有关系,Socket 等应该是标准的,与操作系统.开发工具没有关系的. 可以考虑先在电脑服务器弄一个抓包工具,看看数据是否有从开发板发送到电脑服务器吧. 解决方案二: 电脑服务器是公网ip

利用ASP技术开发基于WWW的数据库检索程序

程序|数据|数据库  ASP是微软公司推出的用以取代CGI的新技术,是目前公认的建立Windows NT动态站点最好的工具.它与ADO(Active Data Object,一种新的数据访问模型)的充分结合,提供了强大的数据库访问功能,使之成为进行网上数据库管理的重要手段.     一.ASP简介   ASP内含于Internet Information Server(简称IIS3.0)中,扩展名以.asp表示.ASP文件可以用常规的文本编辑器编辑,也可以利用专门的辅助开发工具InterDev进

ASP.NET开发员工业绩评测中心

asp.net 摘要:本文介绍使用Asp.net开发一个软件公司内部员工业绩评测系统,包括后台所有员工信息管理,部门信息管理,所有部门评测细则信息管理:前台员工每月自我评测和主管对员工的评测.重点介绍数据库设计,以及重要Web服务端和页面控件的使用.笔者相信本文会对读者的数据库设计和使用Asp.net开发页面技术有很好的启发和帮助. 一. 系统体系结构 Visual Studio .NET 是微软公司迄今为止推出的最强大的,完整的开发工具,用于生成 Asp Web 应用程序.XML Web se

think in java interview番外篇-谈程序员如何修练英语

一.程序员对英语能力的重视度和能力要求应该是在各行各业中排在比较靠前的 这样说吧,英语程度的好坏直接影响着一个程序员的编程.开发.创新能力. 道理很简单: 1. 计算机和软件是用英语创造出来的 2. 国内的技术普及度不怎么高,而最前沿最好最全的资料也往往是英语 3.你在读OpenSource的一些源码时,这些OpenSource也大都来源于英语 因此英语和技术对于一个程序员来说是各占50%这样的一个比重的,英语能力的好坏直接影响到一个程序员的技术能力. 说到这儿其实还是主要源于国内的技术普及度不

Asp.Net MVC5入门学习系列②

原文:Asp.Net MVC5入门学习系列② 添加一个Controller(控制器)    因为我们用的是Asp.Net MVC,MVC最终还是一套框架,所以我们还是需要遵循它才能玩下去,或者说是更好的利用来便于我们的开发,要是对MVC概念还有点模糊的,可以去我以前写的第一话 Asp.Net MVC 3.0[Hello World!]里开始部分就对此做了阐述.假定所有跟我一起学的都了解MVC的这么一个概念,我们就开始下面的步骤了: 现在我们开始添加一个Controller,具体如下: 我们选择创

asp.net开发中怎样去突破文件依赖缓存_实用技巧

在Web项目中可以使用Session,Application等来缓存数据,也可以使用Cache来缓存. 今天我们特别关注的是Cache缓存.Cache位于命名空间System.Web.Caching命名空间下,看到这里我们想到的是它在Web项目中使用. 说明:Cache 类不能在 ASP.NET 应用程序外使用.它是为在 ASP.NET 中用于为 Web 应用程序提供缓存而设计和测试的.在其他类型的应用程序(如控制台应用程序或 Windows 窗体应用程序)中,ASP.NET 缓存可能无法正常工

Asp.Net MVC5入门学习系列⑦

原文:Asp.Net MVC5入门学习系列⑦ 接着上篇结尾所说,如果开发中刚才遇到Model需要添加或者减少字段/属性的话,但是刚好你也利用EF的Code frist通过Model生存的数据库,这时改怎么办?   添加一个字段   我们现在要给Movie实体模型类添加一个评价的字段该怎么搞!我们知道我们默认使用EF code frist生存的数据库是同步性的,这样才能便于我们更好的开发,如果实体模型和数据库不同步的话,实体框架应该会抛出异常.  code frisr设置模型库迁移  在VS里我们