Web服务器的功能

第一、建立连接

接受一个客户端连接

第二、接受请求报文

web服务器会从网络连接中读取数据,并将请求报文中的内容解析出来

web服务器处理结构分类:

  • 单线程web服务器
  • 多线程web服务器
  • 复用的I/O服务器
  • 复用的多线程web服务器

第三、处理请求

一旦web服务器收到了请求,就可以根据方法、资源和首部来对请求进行处理

第四、对资源的映射及访问

web服务器是资源服务器,负责发送预先创建好的资源

第五、构建响应

web服务器识别出资源后,就执行请求方法中描述的动作,并且构建响应状态码、响应首部、响应主题

响应报文通常包括:

  1. MIMEL类型的content-type
  2. content-length
  3. 实体内容

重定向:

web服务器有时会返回重定向响应而不是成功的报文,可以将浏览器重定向到其他地方去执行请求,状态码是3XX,重定向可能出现如下几种情况:

1.永久搬离的资源 ,状态码是301

2.临时搬离的资源,如果资源被临时移走或重命名,服务器可能希望将客户端重定向到新的位置上去,但因为是临时的,服务器希望客户端仍然会使用老的URL,并且收藏夹的url也不会发生变化,返回303状态码

第六、发送响应

服务器跟客户端会有多个连接,有些事空闲的,有些事持久的,对非持久连接,发送报文后,应该关闭。

对于持久连接,要正确地计算content-length,否则客户端就不知道什么时候响应结束了,因为多个HTTP请求在一个TCP连接上跑,对于多媒体类型,用分块传输的方式,如果content-length错误,事务处理的另一端就无法精确地检测出一条报文的结束和另一条报文的开始

第七、记录日志

Web服务器的功能

时间: 2024-10-19 07:00:37

Web服务器的功能的相关文章

WEB服务器与应用服务器的区别

一.简述 WEB服务器与应用服务器的区别: 1.WEB服务器: 理解WEB服务器,首先你要理解什么是WEB?WEB你可以简单理解为你所看到的HTML页面就是WEB的数据元素,处理这些数据元素的应用软件就叫WEB服务器,如IIS.apache. WEB服务器与客户端打交道,它要处理的主要信息有:session.request.response.HTML.JS.CS等. 2.应用服务器: 应用服务器如JSP,处理的是非常规性WEB页面(JSP文件),他动态生成WEB页面,生成的WEB页面在发送给客户

Web服务器和应用服务器简介

通俗的讲,Web服务器传送页面使浏览器可以浏览,然而应用程序服务器提供的是客户端应用程序可以调用(call)的方法(methods).确切一点,你可以说:Web服务器专门处理HTTP请求(request),但是应用程序服务器是通过很多协议来为应用程序提供(serves)商业逻辑(business logic). 1.应用服务器处理业务逻辑,web服务器则主要是让客户可以通过浏览器进行访问. 2.应用服务器处理业务逻辑,web服务器是用于处理HTML文件的.web服务器通常比应用服务器简单,如ap

[C# 网络编程系列]专题三:自定义Web服务器

转自:http://www.cnblogs.com/zhili/archive/2012/08/23/2652460.html 前言: 经过前面的专题中对网络层协议和HTTP协议的简单介绍相信大家对网络中的协议有了大致的了解的, 本专题将针对HTTP协议定义一个Web服务器,我们平常浏览网页通过在浏览器中输入一个网址就可以看到我们想要的网页,这个过程中浏览器只是一个客户端,浏览器(应用层应用程序)通过HTTP协议把用户请求发送到服务端, 服务器接受到发送来的HTTP请求,然后对请求进行处理和响应

嵌入式web服务器

现在在嵌入式设备中所使用的web服务器主要有:boa.thttpd.mini_httpd.shttpd.lighttpd.goaheand.appweb和apache等. Boa 1.介绍 Boa诞生于1991年,作者Paul Philips.是开源的,应用很广泛,特别适合于嵌入式设备,网上流行程度很广.它的官方网站说boa是最受人喜爱的嵌入式web服务器.功能较为强大,支持认证,cgi等.Boa 是一个单任务的HTTP SERVER,它不像传统的web服务器那样为每个访问连接开启一个进程,也不

保证服务器高可用性-灾难恢复(1)WEB服务器的配置流程

背景: 我们服务器的环境,是ESX server,上面跑了几十台虚拟的服务器.大部分都是虚拟的Windows服务器,然后呢每个应用程序都会有几台APP服务器然后安装Websphere来构建cluster来支持,Web服务器方面呢,既有IBM的HTTP server,也有IIS. 环境就是这样了,这次是为A地区的服务器集群做灾难恢复演练. 所谓灾难恢复呢,就是说假如说A地区的服务器集群所在地出现灾难了,地震了海啸了,怎么办?好,直接把所有的服务器都克隆出来然后恢复到B地区,然后通过配置服务器和应用

几种常见的Web服务器

Apache与Tomcat的区别 ,几种常见的web/应用服务器 APACHE是一个web服务器环境程序 启用他可以作为web服务器使用 不过只支持静态网页 如(asp,php,cgi,jsp)等动态网页的就不行 如果要在APACHE环境下运行jsp 的话就需要一个解释器来执行jsp网页 而这个jsp解释器就是TOMCAT, 为什么还要JDK呢?因为jsp需要连接数据库的话 就要jdk来提供连接数据库的驱程,所以要运行jsp的web服务器平台就需要APACHE+TOMCAT+JDK 整合的好处是

WEB服务器、应用程序服务器、HTTP服务器区别

WEB服务器.应用程序服务器.HTTP服务器区别 WEB服务器.应用程序服务器.HTTP服务器有何区别?IIS.Apache.Tomcat.Weblogic.WebSphere都各属于哪种服务器,这些问题困惑了很久,今天终于梳理清楚了: -Web服务器的基本功能就是提供Web信息浏览服务.它只需支持HTTP协议.HTML文档格式及URL.与客户端的网络浏览器配合.因为Web服务器主要支持的协议就是HTTP,所以通常情况下HTTP服务器和WEB服务器是相等的(有没有支持除HTTP之外的协议的web

信息安全系统设计基础实验五:简单嵌入式 WEB 服务器实验 (20135229,20135234)

北京电子科技学院(BESTI) 实     验    报     告 课程:信息安全系统设计                         班级:1352 姓名:马启扬 吕松鸿     学号:20135234 20135229 成绩:             指导教师:娄嘉鹏      实验日期:2015.11  实验密级:       预习程度:               实验时间:15:30—17:00  仪器组次:       必修/选修:必修        实验序号:05    实验

Socket实现简单Web服务器

上一篇博客中介绍了怎样使用socket访问web服务器.关键有两个: 1)熟悉Socket编程: 2)熟悉HTTP协议. 上一篇主要是通过socket来模拟浏览器向(任何)Web服务器发送(HTTP)请求,重点在浏览器端.本篇博客则反过来讲一下怎样使用socket来实现Web服务器,怎样去接收.分析.处理最后回复来自浏览器的HTTP请求. HTTP协议是浏览器和Web服务器都需要遵守的一种通信规范,如果我们编写一个程序,正确遵守了HTTP协议,那么理论上讲,这个程序可以具备浏览器.甚至Web服务