目录
实验介绍
本实验通过对特定网站分析,了解网站运行原理和相关技术;
通过使用抓包工具或浏览器自带工具采集 HTTP 协议包并进行分析。
实验目标
深入了解万维网结构、原理、技术
深入了解并掌握 WEB 页面组成
深入了解并掌握 HTTP 协议
实验原理与方法
万维网(WWW)运行原理
输入一个网址进行访问,这中间其实是客户端浏览器与服务器端的通信过程,具体如下:浏览器与网络上的域名对应的 Web 服务器建立 TCP 连接浏览器发出要求访问某个页面的HTTP 请求,Web 服务器在接收到 HTTP 请求后,解析 HTTP 请求,然后发回包含目标页面的文件数据的 HTTP 响应浏览器接受到 HTTP 响应后,解析 HTTP 响应,并在其窗口中展示网页文件内容,浏览器与 Web 服务器之间的 TCP 连接关闭。
服务器
接受来自浏览器的 TCP 的请求接收并解析 HTTP 请求创建并发送 HTTP 响应。常用的 Web 服务器有 IIS,Tomcat,Weblogic,jboss 等。
浏览器
请求与 Web 服务器建立 TCP 连接创建并发送 HTTP 请求接受并解析 HTTP 响应展示 html 文档HTTP 客户程序(浏览器)和 HTTP 服务器分别由不同的软件开发商提供,目前最流行的浏览器IE,Firefox,Google Chrome,Apple Safari 等。
HTTP协议
简介
HTTP 协议(Hyper Text Transfer Protocol,超文本传输协议),是用于从万维网(WWW:WorldWide Web)服务器传输超文本到本地浏览器的传送协议。HTTP 基于 TCP/IP 通信协议来传递数据。HTTP 基于客户端/服务端(C/S)架构模型,通过一个可靠的链接来交换信息,是一个无状态的请求/响应协议。
特点
(1)HTTP 是无连接:无连接的含义是限制每次连接只处理一个请求。服务器处理完客户的2请求,并收到客户的应答后,即断开连接。采用这种方式可以节省传输时间。
(2)HTTP 是媒体独立的:只要客户端和服务器知道如何处理的数据内容,任何类型的数据都可以通过 HTTP 发送。客户端以及服务器指定使用适合的 MIME‐type 内容类型。
(3)HTTP 是无状态:无状态是指协议对于事务处理没有记忆能力。缺少状态意味着如果后续处理需要前面的信息,则它必须重传,这样可能导致每次连接传送的数据量增大。另一方面,在服务器不需要先前信息时它的应答就较快。
请求报文
请求行:
①是请求方法,GET 和 POST 是最常见的 HTTP 方法,除此以外还包括 DELETE、HEAD、OPTIONS、PUT、TRACE。
②为请求对应的 URL 地址,它和报文头的 Host 属性组成完整的请求 URL。
③是协议名称及版本号。
请求头: