web服务器的⼯作原理和相关协议
⾸先来说说什么是web服务器吧:
Web服务器是可以向发出请求的浏览器提供⽂档的程序。
服务器是⼀种被动程序:只有当Internet上运⾏其他计算机中的浏览器发出的请求时,服务器才会响应
最常⽤的Web服务器是Apache和Microsoft的Internet信息服务器(Internet Information Services,IIS)。
Internet上的服务器也称为Web服务器,是⼀台在Internet上具有独⽴IP地址的计算机,可以向Internet上的客户机提供WWW、Email 和FTP等各种Internet服务。
web服务器主要提供什么服务Web服务器是指驻留于因特⽹上某种类型计算机的程序。当Web浏览器(客户端)连到服务器上并请求⽂件时,服务器将处理该请求并将⽂件反馈到该浏览器上,附带的信息会告诉浏览器如何查看该⽂件(即⽂件类型)。服务器使⽤HTTP(超⽂本传输协议)与客户机浏览器进⾏信息交流,这就是⼈们常把它们称为HTTP服务器的原因。
Web服务器不仅能够存储信息,还能在⽤户通过Web浏览器提供的信息的基础上运⾏脚本和程序。
Web服务器的⼯作原理并不复杂,⼀般可分成如下4个步骤:连接过程、请求过程、应答过程以及关闭连接。下⾯对这4个步骤作⼀简单的介绍:
连接过程就是Web服务器和其浏览器之间所建⽴起来的⼀种连接。查看连接过程是否实现,⽤户可以到和打开socket这个虚拟⽂件,这个⽂件的建⽴意味着连接过程这⼀步骤已经成功建⽴。
请求过程就是Web的浏览器运⽤socket这个⽂件向其服务器⽽提出各种请求。
应答过程就是运⽤HTTP协议把在请求过程中所提出来的请求传输到Web的服务器,进⽽实施任务处理,然后运⽤HTTP协议把任务处理的结果传输到Web的浏览器,同时在Web的浏览器上⾯展⽰上述所请求之界⾯。
关闭连接就是当上⼀个步骤–应答过程完成以后,Web服务器和其浏览器之间断开连接之过程。Web服务器上述4个步骤环环相扣、紧密相联,逻辑性⽐较强,可以⽀持多个进程、多个线程以及多个进程与多个线程相混合的技术
web最基本的两个协议是HTTP和HTML:
超⽂本传输协议(英⽂:HyperText Transfer Protocol,缩写:HTTP)
超⽂本传输协议是互联⽹上应⽤最为⼴泛的⼀种⽹络协议。设计HTTP最初的⽬的是为了提供⼀种发布和接收HTML页⾯的⽅法。通过HTTP或者HTTPS协议请求的资源由统⼀资源标识符(Uniform Resource Identifiers,URI)来标识。 ——————————————————————————————————————————————————————————————
HTTP的发展是万维⽹协会(World Wide Web Consortium,W3C)和互联⽹⼯程任务组(Internet Engineering Task Force,IETF)合作的结果,(他们)最终发布了⼀系列的RFC。1996年,RFC 1945[7] 定义了HTTP/1.0版本。其中最著名的是1999年6⽉公布的RFC 2616,定义了HTTP协议中现今⼴泛使⽤的⼀个版本—HTTP 1.1。 ——————————————————————————————————————————————————————————————
HTTP是⼀个客户端终端(⽤户)和服务器端(⽹站)请求和应答的标准(TCP)。通过使⽤Web浏览器、⽹络爬⾍或者其它的⼯具,客户端发起⼀个HTTP请求到服务器上指定端⼝(默认端⼝为80)。我们称这个客户端为⽤户代理程序(user agent)。应答的服务器上存储着⼀些资源,⽐如HTML⽂件和图像。我们称这个应答服务器为源服务器(origin server)。在⽤户代理和源服务器中间可能存在多个“中间层”,⽐如代理、⽹关或者隧道(tunnel)。 ——————————————————————————————————————————————————————————————
尽管TCP/IP协议是互联⽹上最流⾏的应⽤,HTTP协议中,并没有规定必须使⽤它或它⽀持的层。事实上,HTTP可以在任何互联⽹协议上,或其他⽹络上实现。HTTP假定其下层协议提供可靠的传输。因此,任何能够提供这种保证的协议都可以被其使⽤。因此也就是其在TCP/IP协议族使⽤TCP作为其传输层。 ——————————————————————————————————————————————————————————————
通常,由HTTP客户端发起⼀个请求,创建⼀个到服务器指定端⼝(默认是80端⼝)的TCP连接。HTTP服务器则在那个端⼝监听客户端的请求。⼀旦收到请求,服务器会向客户端返回⼀个状态,⽐如”HTTP/1.1 200 OK”,以及返回的内容,如请求的⽂件、错误消息、或者其它信息。 ——————————————————————————————————————————————————————————————
超⽂本标记语⾔HTML(HyperText Markup Language,HTML)
超⽂本标记语⾔是为“⽹页创建和其它可在⽹页浏览器中看到的信息”设计的⼀种标记语⾔。HTML被⽤来结构化信息——例如标题、段落和列表等等,也可⽤来在⼀定程度上描述⽂档的外观和语义。1982年由蒂姆·伯纳斯-李创建,由IETF⽤简化的SGML(标准通⽤标记语⾔)语法进⾏进⼀步发展的HTML,后来成为国际标准,由万维⽹联盟(W3C)维护。 ——————————————————————————————————————————————————————————————
HTML档案最常⽤的扩展名(扩展名)为.html,但是有如DOS等的旧操作系统限制扩展名最多为3个⽂字符号,所以.htm扩展名也允许使⽤。⽽如今.htm扩展名的使⽤较为减少。编者可以使⽤任何基本的⽂本编辑器(例如Notepad等)或所见即所得的HTML编辑器来编辑HTML ⽂件。 ——————————————————————————————————————————————————————————————
早期的HTML语法规则定义较为松散,这有助于不熟悉⽹络出版的⼈使⽤或变更。⽹页浏览器接受这类的⽂件,使之可以显⽰语法不严格的⽹页。随着时间的流逝,官⽅标准渐渐趋于严格的语法,但是浏览器继续显⽰⼀些仍不合乎标准的HTML。使⽤XML的严格规则的XHTML(可扩展超⽂本标记语⾔)是W3C计划中的HTML的接替者。虽然很多⼈认为它已经成为当前的HTML标准,但是它实际上是⼀个独⽴的、和HTML平⾏发展的标准。W3C⽬前建议使⽤XHTML 1.1、XHTML 1.0或者HTML 4.01标准编写⽹页,但已有许多⽹页转⽤较新的HTML5编码撰写(如Google)。 ——————————————————————————————————————————————————————————————
1980,为使世界各地的物理学家能够⽅便的进⾏合作研究,创建了使⽤于其系统的HTML。Tim Berners-Lee设计的HTML以纯⽂字格式为基础,可以使⽤任何⽂本编辑器处理,最初仅有少量标记(TAG)⽽易于掌握运⽤。随着HTML使⽤率的增加,⼈们不满⾜只能看到⽂字。1993年,还是⼤学⽣的马克·安德⽣在他的Mosaic浏览器加⼊加载中…标记,从此可以在Web页⾯上浏览图⽚。但⼈们认为仅有图⽚还是不够,希望可将任何形式的媒体加到⽹页上。因此HTML不断地扩充和发展。 ——————
————————————————————————————————————————————————————————
超⽂本标记语⾔(第⼀版)——在1993年6⽉发为互联⽹⼯程⼯作⼩组(IETF)⼯作草案发布(并⾮标准).
HTML 2.0——1995年11⽉作为RFC 1866发布,在RFC 2854于2000年6⽉发布之后被宣布已经过时
HTML 3.2——1997年1⽉14⽇,W3C推荐标准
HTML 4.0——1997年12⽉18⽇,W3C推荐标准
HTML 4.01(微⼩改进)——1999年12⽉24⽇,W3C推荐标准
ISO/IEC 15445:2000(“ISO HTML”)——2000年5⽉15⽇发布,基于严格的HTML 4.01语法,是国际标准化组织和国际电⼯委员会的标准。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论