【网络协议详解】——万维网WWW系统协议(学习笔记)

🕒 1. 概述

  • 万维网www(World Wide Web)并非某种特殊的计算机网络。它是一个大规模的、联机式的信息储藏所,是运行在因特网上的一个分布式应用
  • 万维网利用网页之间的超链接将不同网站的网页链接成一张逻辑上的信息网。
  • 浏览器最重要的部分是渲染引擎,也就是浏览器内核。负责对网页内容进行解析和显示。
    • 不同的浏览器内核对网页内容的解析也有不同,因此同一网页在不同内核的浏览器里显示的效果可能不同。
    • 网页编写者需要在不同内核的浏览器中测试网页显示效果。
  • 为了方便地访问在世界范围的文档,万维网使用统一资源定位符URL来指明因特网上任何种类"资源"的位置
  • URL的一般形式由以下四个部分组成:<协议>://<主机>:<端口>/<路径>

万维网的文档:

  • 超文本标记语言HTML(HyperText Markup Language)
    • 使用多种“标签”来描述网页的结构和内容
  • 层叠样式表CSS(Cascading Style Sheets)
    • 从审美的角度来描述网页的样式
  • 一种脚本语言(和Java没有任何关系)
    • 控制网页的行为

🕒 2. 文本传输协议HTTP

HTTP定义了浏览器(即万维网客户进程)怎样向万维网服务器请求万维网文档,以及万维网服务器怎样把万维网文档传送给浏览器

在这里插入图片描述

HTTP/1.0采用非持续连接方式。在该方式下,每次浏览器要请求一个文件都要与服务器建立TCP连接,当收到响应后就立即关闭连接。

  • 每请求一个文档就要有两倍的RTT的开销。若一个网页上有很多引用对象(例如图片等),那么请求每一个对象都需要花费2RTT的时间。
  • 为了减小时延,浏览器通常会建立多个并行的TCP连接同时请求多个对象。但是,这会大量占用万维网服务器的资源,特别是万维网服务器往往要同时服务于大量客户的请求,这会使其负担很重。

在这里插入图片描述

HTTP/1.1采用持续连接方式。在该方式下,万维网服务器在发送响应后仍然保持这条连接,使同一个客户(浏览器)和该服务器可以继续在这条连接上传送后续的HTTP请求报文和响应报文。这并不局限于传送同一个页面上引用的对象,而是只要这些文档都在同一个服务器上就行。

为了进一步提高效率,HTTP/1.1的持续连接还可以使用流水线方式工作,即浏览器在收到HTTP的响应报文之前就能够连续发送多个请求报文。这样的一个接一个的请求报文到达服务器后,服务器就发回一个接一个的响应报文。这样就节省了很多个RTT时间,使TCP连接中的空闲时间减少,提高了下载文档的效率。

🕒 3. HTTP的报文格式

HTTP有两类报文:请求报文和响应报文

HTTP是面向文本的,其报文中的每一个字段都是一些ASCII码串,并且每个字段的长度都是不确定的。

在这里插入图片描述

 方 法   描 述   GET   请求URL标志的文档   HEAD   请求URL标志的文档的首部   POST   向服务器发送数据   PUT   在指明的URL下存储一个文档   DELETE   删除URL标志的文档   CONNECT   用于代理服务器   OPTIONS   请求一些选项信息   TRACE   用来进行环回测试   PATCH   对PUT方法的补充,用来对已知资源进行局部更新  \begin{array}{|c|c|} \hline \text { 方 法 } & {\text { 描 述 }} \\ \hline \text { GET } & \text { 请求URL标志的文档 } \\ \hline \text { HEAD } & \text { 请求URL标志的文档的首部 } \\ \hline \text { POST } & \text { 向服务器发送数据 } \\ \hline \text { PUT } & \text { 在指明的URL下存储一个文档 } \\ \hline \text { DELETE } & \text { 删除URL标志的文档 } \\ \hline \text { CONNECT } & \text { 用于代理服务器 } \\ \hline \text { OPTIONS } & \text { 请求一些选项信息 } \\ \hline \text { TRACE } & \text { 用来进行环回测试 } \\ \hline \text { PATCH } & \text { 对PUT方法的补充,用来对已知资源进行局部更新 } \\ \hline \end{array}     GET  HEAD  POST  PUT  DELETE  CONNECT  OPTIONS  TRACE  PATCH     请求URL标志的文档  请求URL标志的文档的首部  向服务器发送数据  在指明的URL下存储一个文档  删除URL标志的文档  用于代理服务器  请求一些选项信息  用来进行环回测试  PUT方法的补充,用来对已知资源进行局部更新 

 状态码(五大类33种)   描 述  1 X X  表示通知信息,如请求收到了或正在进行处理;  2 X X  表示成功,如接受或知道了;  3 X X  表示重定向,即要完成请求还必须采取进一步的行动;  4 X X  表示客户的差错,如请求中有错误的语法或不能完成;  5 X X  表示服务器的差错,如服务器失效无法完成请求。  \begin{array}{|c|c|} \hline \text { 状态码(五大类33种) }&{\text { 描 述 }} \\ \hline \mathbf{1 X X} & \text { 表示通知信息,如请求收到了或正在进行处理; } \\ \hline \mathbf{2 X X} & \text { 表示成功,如接受或知道了; } \\ \hline \mathbf{3 X X} & \text { 表示重定向,即要完成请求还必须采取进一步的行动; } \\ \hline \mathbf{4 X X} & \text { 表示客户的差错,如请求中有错误的语法或不能完成; } \\ \hline \mathbf{5 X X} & \text { 表示服务器的差错,如服务器失效无法完成请求。 } \\ \hline \end{array}  状态码(五大类33种) 1XX2XX3XX4XX5XX    表示通知信息,如请求收到了或正在进行处理;  表示成功,如接受或知道了;  表示重定向,即要完成请求还必须采取进一步的行动;  表示客户的差错,如请求中有错误的语法或不能完成;  表示服务器的差错,如服务器失效无法完成请求。 

🕒 4. Cookie

Cookie提供了一种机制使得万维网服务器能够"记住"用户,而无需用户主动提供用户标识信息。也就是说,Cookie是一种对无状态HTTP进行状态化的技术。

在这里插入图片描述

🕒 5. 万维网缓冲与代理服务器

  • 在万维网中还可以使用缓存机制以提高万维网的效率。
  • 万维网缓存又称为Web缓存(Web Cache),可位于客户机,也可位于中间系统上,位于中间系统上的Web缓存又称为代理服务器(Proxy Server)。
  • Web缓存把最近的一些请求和响应暂存在本地磁盘中。当新请求到达时,若发现这个请求与暂时存放的请求相同,就返回暂存的响应,而不需要按URL的地址再次去因特网访问该资源

在这里插入图片描述

Q:如果原始服务器中的文档已经修改,但是代理服务器中仍然有缓存,那么主机访问文档时是否会访问到未修改的文档从而发送错误呢?
A:实际上,原始服务器会为每个响应的对象设定一个修改时间字段和一个有效日期字段。当请求到达代理服务器时,若文档未过期则直接返回响应报文,否则向原始服务器发送请求。请求头部中有If-modified-since字段记录了上次文档的修改时间,如果代理服务器中文档的修改时间与原始服务器中文档的修改时间一致,说明文档没有发送变化,因此原始服务器返回一个空文档,否则返回新文档。

在这里插入图片描述


❗ 转载请注明出处
作者:HinsCoder
博客链接:🔎 作者博客主页

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Linux服务器配置与管理项目7 WWW服务器配置与管理 Linux服务器配置与管理项目7--WWW服务器配置与管理全文共87页,当前为第1页。 【项目描述】 公司为方便对外和对内发布信息,需要一台WWW服务器。WWW服务器的域名为www.zzrvtc.com,能够实现基本信息浏览,虚拟主机、个人主页、虚拟目录、权限控制、身份认证等功能。 本项目中我们来完成WWW服务器的配置与管理任务。 Linux服务器配置与管理项目7--WWW服务器配置与管理全文共87页,当前为第2页。 【学习目标】 (1)了解WWW服务器在网络中的作用。 (2)掌握WWW服务器的安装过程。 (3)掌握各种WWW服务器功能的配置。 (4)掌握Web网站和虚拟主机的配置。 Linux服务器配置与管理项目7--WWW服务器配置与管理全文共87页,当前为第3页。 预备知识 认识WWW服务器 Linux服务器配置与管理项目7--WWW服务器配置与管理全文共87页,当前为第4页。 1.WWW服务 WWW(World Wide Web,简称Web)服务是一种建立在超文本基础上的浏览、查询因特网信息的方式,它以交互方式查询并且访问存放于远程计算机的信息,为多种因特网浏览与检索访问提供一个单独一致的访问机制。Web页面将文本、超媒体、图形和声音结合在一起。因特网给企业带来通信与获取信息资源的便利条件。 WWW服务采用客户机/服务器结构,整理和存储各种WWW资源,并响应客户端软件的请求,把所需的信息资源通过浏览器传送给用户。 Linux服务器配置与管理项目7--WWW服务器配置与管理全文共87页,当前为第5页。 1.WWW服务 WWW服务所用到的协议有超文本传输协议(Hypertext Transfer Protocol,HTTP)与超文本标记语言(Hypertext Markup language,HTML)。其中,HTTP是WWW服务使用的应用层协议,用于实现WWW客户机与WWW服务器之间的通信;HTML语言是WWW服务的信息组织形式,用于定义在WWW服务器中存储的信息格式。 Linux服务器配置与管理项目7--WWW服务器配置与管理全文共87页,当前为第6页。 2.HTTP协议 HTTP(Hyper Text Transfer Protocol)超文本传输协议,是用于从WWW服务器传输超文本到本地浏览器的传送协议。HTTP是一个应用层的面向对象的协议,由于其简捷、快速的方式,适用于分布式超媒体信息系统。它于1990年提出,经过几年的使用与发展,得到不断地完善和扩展。目前在WWW中使用的是HTTP 1.1,而且HTTP-NG(Next Generation of HTTP)的建议已经提出。 Linux服务器配置与管理项目7--WWW服务器配置与管理全文共87页,当前为第7页。 2.HTTP协议 HTTP协议采用客户端/服务端架构。浏览器作为HTTP客户端通过URL向HTTP服务端即Web服务器发送所有请求。Web服务器接收到请求后,向客户端发送响应信息。 如今的Web服务可以分为两种:静态Web服务和动态Web服务。其中动态Web服务更为流行。动态Web服务需要后台数据库服务器的支持。 Linux服务器配置与管理项目7--WWW服务器配置与管理全文共87页,当前为第8页。 2.HTTP协议 我们以访问http://www.zzrvtc.com网站为例,其使用HTTP协议的工作流程如图所示。 Linux服务器配置与管理项目7--WWW服务器配置与管理全文共87页,当前为第9页。 任务一 安装Apache服务器 Linux服务器配置与管理项目7--WWW服务器配置与管理全文共87页,当前为第10页。 任务提出 要想使WWW服务器顺利运行,首先需要安装好所需要的软件包。本次任务主要安装WWW服务器所需要的软件包Apache。 Linux服务器配置与管理项目7--WWW服务器配置与管理全文共87页,当前为第11页。 任务分析 开放源代码的Apache(阿帕奇)是一个Web服务器软件,起初是由伊利诺伊大学香槟分校的国家超级计算机应用中心(NCSA)开发的,此后,Apache被开放源代码团体的成员不断地发展和加强。Apache服务器拥有牢靠、可信的美誉,可以在大多数计算机操作系统中运行,由于其多平台和安全性的特点被广泛使用,是最流行的Web服务器软件之一。 Linux服务器配置与管理项目7--WWW服务器配置与管理全文共87页,当前为第12页。 任务分析 Apache支持众多功能,这些功能绝大部分都是通过编译模块实现的。这些特性包括从服务器端的编程语言支持到身份认证方案。 一些通用的语言接口支持perl、python和PHP,流行的认证模块包括mod_access、rood_aut

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值