`
gogole_09
  • 浏览: 205595 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

web服务器工作方式

阅读更多

   记录一下 web服务器的工作流程: 其大致分为如下几个步骤。

  1. 等待客户请求:
    web服务器等待来至于Internet的客户请求, 其监听某个端口直到有请求进来,而此时,
    服务器处于“睡眠状态”
  2. 客户请求到来 :
    客户通过浏览器对文档提出要求。用户可能是敲入URL或者点击链接。
    客户机器上的网络软件负责定位服务器主机,一旦建立连接, 客户按照HTTP协议发出请求。
                 如 "GET /sample.html HTTP/1.0"
    这些字符串经过网上传输,被服务器接受并保存到内存中。
  3. 服务器解析请求:
    WWW服务器对请求按照HTTP协议进行解码,(以上部字符串为例) 其涉及到三个主要内容:
    • 方法(GET) {GET的含义是---  服务器定位、读取文件并将它返回给客户
    • 文档(/sample.html)
    • 浏览器协议(HTTP/1.0)
    现在服务器就知道了, 它应找到文件 /sample.html,并使用HTTP/1.0协议将内容返回给客户.
    服务器是经过与请求到来时相同的连接发出的,所以服务器不需要定位客户或创建新连接. 
  4. 读取其他信息(如果有必要的话):
    WWW服务器根据需要去读取请求的其他部分。 HTTP/1.0下,客户还应给服务器提供关于它的一些元信息
    ,用于描述浏览器及其能力,以使用服务器能根据此确定如何返回应答。
           如:User-agent:Mosaic for X Windows /2.4
                   Accept:text/plain
                   Accept:text/html
                   Accept::image/*
  5. 完成请求动作:
    若没有错误的出现,Web服务器将执行请求所要求的动作。 获取(GET)一个文档,Web服务器会在其文档树中搜索请求的文件(/sample.html) . 这是由服务器机器上作为操作系统一部分的文件系统完成的。
    若文件能找到并正常读取,服务器就将返回给客户。
           被找到的目标文件的发送:
    • 首先服务器发送一些响应码和描述信息。 (如 200 Content-type:text/html;Content-length:1066等.)
    • 发送描述信息后,服务器读取文件,并输出到网络端口上。 若传输失败,返回错误信息。
         
          如果没找到目标文件:
    • 发送相应的响应码,描述原因,比如 403(没有找到)..
      比如: HTTP /1.0 403 Not Found
                Server: Apache/1.3.6
                Date: .....
                Content-type: text/html
                Content-length:0

  6. 关闭文件和网络连接,结束会话.
  7. 转回第一步,重新监听端口,以准备下一次连接.
分享到:
评论

相关推荐

    Web服务器的工作原理

    Web服务器的工作原理 Web服务器的工作原理 Web服务器的工作原理 Web服务器的工作原理 Web服务器的工作原理 Web服务器的工作原理 Web服务器的工作原理 Web服务器的工作原理 Web服务器的工作原理 Web服务器的工作原理 ...

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

    IIS、Apache、Tomcat、Weblogic、WebSphere 都是不同的服务器, Apache 是纯粹的 Web 服务器,Tomcat 是一个 Servlet 和 JSP 容器,可以作为轻量级应用服务器,IIS 是一个兼具应用服务器功能的 Web 服务器,Weblogic...

    简单搭建WEB服务器 简单搭建WEB服务器 简单搭建WEB服务器

    本文将详细介绍如何简单搭建一个WEB服务器,包括基础概念、所需工具及步骤,旨在帮助初学者快速入门。 一、Web服务器的基础概念 1. HTTP:HTTP是互联网上应用最为广泛的一种网络协议,用于从万维网服务器传输超文本...

    简单Web服务器设计与实现.doc

    本文主要介绍了简单Web服务器的设计与实现,涵盖了WWW的工作原理、HTTP协议、Java语言、Web服务器的设计与实现等方面的知识点。 WWW的工作原理基于客户机/服务器计算模型,由Web浏览器(客户机)和Web服务器...

    超级简单的web服务器

    虽然这里提到的"超级简单的Web服务器"不是Apache,但了解Apache可以帮助我们理解Web服务器的一般工作方式和可能性。 总结起来,"超级简单的Web服务器"如HFS为用户提供了一种便捷的方式,让他们能够在没有专业IT知识...

    易语言简易WEB服务器源码.rar

    这款Web服务器源码可能是为了教学、学习或实践目的而创建的,使用者可以通过分析和修改源代码来理解Web服务器的工作原理,以及易语言在构建网络服务方面的应用。 【描述】"易语言简易WEB服务器源码.rar" 描述中的"....

    实验_Linux下的web服务器.doc

    本实验旨在让参与者了解和掌握如何在 Linux 系统中搭建和管理Web服务器,包括基本的Web服务器配置以及虚拟主机的设置,以便能实现多站点托管和服务。 【实验准备】 1. Linux操作系统(例如Linux 9.0) 2. Windows...

    基于QT的轻量级web服务器

    3. 教育目的,让学生了解Web服务器的工作原理和实现。 通过这个项目,开发者可以深入理解HTTP协议、网络编程以及QT库在网络应用中的运用。此外,它也是学习C++和开源社区协作的好案例。不过,对于大型、高并发的...

    miniweb服务器一键搭建静态网站

    7. **本地开发与测试**:对于开发者来说,这样的轻量级Web服务器非常有用,可以快速搭建本地环境,进行网页设计、前端代码测试等工作,而无需连接到互联网。 8. **域名与IP地址**:在本地使用Web服务器时,通常通过...

    stm32+esp8266连web服务器

    stm32+esp8266连web服务器stm32+esp8266连web服务器stm32+esp8266连web服务器stm32+esp8266连web服务器stm32+esp8266连web服务器stm32+esp8266连web服务器stm32+esp8266连web服务器stm32+esp8266连web服务器stm32+...

    Windows server 2022 web服务器的搭建

    Windows Server 2022 Web 服务器的搭建 Windows Server 2022 是 Microsoft 公司推出的最新一代服务器操作系统,具有非常强的安全性、可靠性和可扩展性。作为一名 IT 专业人士,了解如何搭建和配置 Windows Server ...

    一个简单的web服务器编程实例

    这个简单的Web服务器实例是理解Web服务器工作原理的一个良好起点。通过实践和学习,你可以逐步掌握Web服务器编程的核心技能,并能够开发出功能更强大的服务器应用。如果你希望深入研究,可以进一步学习网络协议、Web...

    基于单片机的嵌入式Web服务器设计与实现.pdf

    * CGI技术可以在Web环境下,从客户端传送一些信息给Web服务器,Web服务器把接收到的有关信息放入环境变量,然后再去启动所指定的CGI脚本以完成特定的工作。 * CGI技术可以使得浏览器和服务器之间具有交互性。 知识...

    web-server WEB服务器

    "这句话表明这是一份相对罕见且有价值的资源,可能对那些想要学习Web服务器工作原理、进行服务器开发或者自定义服务器功能的开发者特别有用。源代码通常是开源的,允许用户研究、修改和分发,这对于学习和实践编程...

    web服务器编程代码

    此外,这样的服务器可能不支持所有HTTP特性,比如HTTPS、WebSocket或HTTP/2,但对于初学者来说,它是理解Web服务器工作原理的好起点。 在进行Web服务器编程时,开发者需要熟悉HTTP协议,了解其工作流程,包括请求和...

    易语言简易WEB服务器

    在易语言简易WEB服务器中,可能包含有解析请求头、提取请求方法、获取请求URL等函数。 4. **转换路径子程序**:在HTTP服务器中,转换路径是一个重要的功能,它将客户端请求的URL转换为服务器上实际的文件路径。例如...

    web服务器源代码

    源代码是实现这些功能的程序员编写的原始指令集合,它揭示了软件内部的...通过VC6.0编译并通过的源码,对开发者来说是一个宝贵的教育资源,可以帮助他们深化对Web服务器工作的理解,并可能为开发自己的服务器提供起点。

    VB6.0编写的简易WEB服务器

    Web服务器的工作就是解析这些HTTP请求,并返回相应的HTTP响应。 在VB6.0中实现一个简易Web服务器,通常会涉及以下几个关键点: 1. **监听端口**:Web服务器需要监听特定的TCP端口(通常是80),以便接收来自客户端...

    Web服务器的架设

    Web服务器的架设 Web服务器的架设是指在计算机网络中安装和配置Web服务器软件的过程,以便提供...架设Web服务器需要了解Web服务器的工作原理,选择合适的Web服务器软件,了解如何配置Web服务器,以及如何架设网站等。

    stm32搭建web服务器

    - 配置TCP/IP端口:Web服务器通常工作在TCP的80端口上,因此需要在LWIP中打开这个端口。 4. **编写Web服务器代码**: - 初始化LWIP:调用LWIP的初始化函数,设置TCP/IP堆栈。 - 创建服务器socket:使用`socket()...

Global site tag (gtag.js) - Google Analytics