Http权威指南学习研究
学习时间: 该学习:第六章 6.6小节 加油 185页
2017年5月15日15:13:00
今天任务:
看完前两章节:
第一章
第二章
第一章已经看完。
笔记:
2017年5月15日15:15:51
第一章
1.HTTP( Hypertext Transfer Protocol, 超文本传输协议①) 是在万维网上进行通信时
所使用的协议方案。 HTTP 有很多应用, 但最著名的是用于 Web 浏览器和 Web 服
务器之间的双工通信。
2.Web 浏览器、 服务器和相关的 Web 应用程序都是通过 HTTP 相互通信的。
3.HTTP 使用的是可靠的数据传输协议。
4.Web 服务器是 Web 资源( Web resource) 的宿主。
5.URI:统一资源标识符( Uniform Resource Identifier, URI)。每个资源都有指定的URI来标识。
6.URL:统一资源定位符( URL) 是资源标识符最常见的形式。 URL 描述了一台特定服务器
上某资源的特定位置。 它们可以明确说明如何从一个精确、 固定的位置获取资源。
7.大部分 URL 都遵循一种标准格式, 这种格式包含三个部分。
• URL 的第一部分被称为方案( scheme), 说明了访问资源所使用的协议类型。 这
部分通常就是 HTTP 协议( http://)。
• 第二部分给出了服务器的因特网地址( 比如, www.joes-hardware.com)。
• 其余部分指定了 Web 服务器上的某个资源( 比如, /specials/saw-blade.gif)。
现在, 几乎所有的 URI 都是 URL。
8.URN:URN 是作为特定内容的唯一名称使用
的, 与目前的资源所在地无关。 使用这些与位置无关的 URN, 就可以将资源四处搬
移。 通过 URN, 还可以用同一个名字通过多种网络访问协议来访问资源。
9.Http中的方法:
get、put、delete、post、head
10.Http message(http 报文)
1.常用的状态码
200 OK 正确返回
302 Redirect 重定向 到其他地方去获取资源
404 Not found 未找到 无法找到这个资源
2.HTTP 报文都是纯文本。HTTP报文分为:请求报文和响应报文 由起始行、首部字段、主体组成。
3. TCP:Transmission Control Protocol
4.HTTP 是个应用层协议。
5.只要建立了 TCP 连接, 客户端和服务器之间的报文交换就不会丢失、 不会被破坏,
也不会在接收时出现错序了。
6. 域名就是IP 地址比较人性化的别称。
7.HTTP 的 URL 中没有端口号时, 可以假设默认端口号是 80。
8.浏览器是怎样通过 HTTP 显示位于远端服务器中的某个简单 HTML 资源的
:
(a) 浏览器从 URL 中解析出服务器的主机名;
(b) 浏览器将服务器的主机名转换成服务器的 IP 地址;
(c) 浏览器将端口号( 如果有的话) 从 URL 中解析出来;
(d) 浏览器建立一条与 Web 服务器的 TCP 连接;
(e) 浏览器向服务器发送一条 HTTP 请求报文;
(f) 服务器向浏览器回送一条 HTTP 响应报文;
(g) 关闭连接, 浏览器显示文档。
9.HTTP 使用了 TCP/IP 传输协议, 而且它是基于文本的。
10.Telnet就是模拟出了一个web客户端。
1.Telnet 可以很好地模拟 HTTP 客户端, 但不能作为服务器使用。
第一章内容已经学习完!!!
总结:
更深入的理解了Http,浏览器和服务器之间的数据传输到底是如何进行的有了深入的理解。
第二章 URL与资源
第二章已经学完
2017年5月15日18:53:11
笔记:
第二章
1.URL 就是因特网资源的标准化名称。 URL 指向一条电子信息片段, 告诉你它们位于
何处, 以及如何与之进行交互。
2.URI 是一个通用的
概念, 由两个主要的子集 URL 和 URN 构成, URL 是通过描述资源的位置来标识资
源的, 而 URN( 本章稍后会介绍) 则是通过名字来识别资源的, 与它们当前所处位
置无关。
3. URL http://www.joes-hardware.com/seasonal/index-fall.html
http:URL使用的是http协议
www.joes-hardware.com:服务器地址
seasonal/index-fall.html:资源的位置
4.大多数 URL 都有同样的:“ 方案 :// 服务器位置 / 路径” 结构。
5.用户为何可以直接从浏览器上下载资源?
就是因为浏览器直接指向了那个资源的资源位置。
6.URL 为应用程序提供了一种访问资源的手段。
7.URL 告知浏览器如何对资源进行访问和处理, 这有助于简化复杂的网络世界。 1
应用程序可以使用 URL 来简化信息的访问过程。
8.URL 为用户及他们的浏览器提供了找到信息所需的所有条件。 URL 定义了用户所需
的特定资源, 它位于何处以及如何获取它。
9.FTP 这样的协议, 有两种传输模式, 二进制和文本形式。
下边的默认端口
Ftp(文件传输协议(FTP:File Transfer Protocol)默认端口是21,
SMTP:传输电子邮件的简单邮件传输协议( Simple Mail Transfer Protocol, SMTP) 端口:25
telnet(远程登陆) 默认端口是23
snmp(简单网络管理协议)的udp 默认端口是 agent端:161,客户端: 162
HTTP 80
https 唯一的区别在于方案 https 使用了网景的 SSL, SSL 为HTTP 连接提供了端到端的加密机制。默认端口为 443。
rtsp, rtspu RTSP URL 是可以通过实时流传输协议( Real Time Streaming Protocol) 解析的音 / 视频媒体资源的标识符。
10.URL 最重要的 3 个部分是方案( scheme)、主机( host) 和路径( path)。
1.URL: http://www.joes-hardware.com:80/index.html, 其方案是 http,
主机为 www.joes-hardware.com, 端口是 80, 路径为 /index.html。
2.URL 是可移植的( portable)。
总结:
第二章主要介绍了URL的组成和相关资源 如何访问的问题,对URL的组成有了更深层次的理解。
今天的任务好像都完成了,但是自己需要弥补的还有很多,加油。!!!!!!
上传几张学习过程中的理解图:
2017年5月16日15:39:38
第三章 HTTP报文
笔记:
2017年5月16日15:41:16
第三章 HTTP报文
1. HTTP 是因特网的信使。
2.HTTP 报文是在 HTTP 应用程序之间发送的数据块。
3.事务: transaction
4.报文流入源端服务器
5.报文向下游流动
6.所有的 HTTP 报文都可以分为两类: 请求报文( request message) 和响应报文
( response message)。
7.状态码( status-code):这三位数字描述了请求过程中所发生的情况。
8.200 到 299 之间的状态码表示成功。
300 到 399 之间的代码表示资源已经被移走了。 400 到 499 之间的代码表示客户端
的请求出错了。 500 到 599 之间的代码表示服务器出错了。
9.GET 是最常用的方法。 通常用于请求服务器发送某个资源。
10.HEAD 方法与 GET 方法的行为很类似, 但服务器在响应中只返回首部。 不会返回实
体的主体部分。 这就允许客户端在未获取实际资源的情况下, 对资源的首部进行检
查。
1.与 GET 从服务器读取文档相反, PUT 方法会向服务器写入文档。
因为 PUT 允许用户对内容进行修改, 所以很多 Web 服务器都要求在执行 PUT 之
前, 用密码登录。
2.POST 方法起初是用来向服务器输入数据的。
3.TRACE 方法主要用于诊断;
4.OPTIONS 方法请求 Web 服务器告知其支持的各种功能。
5.DELETE 方法所做的事情就是请服务器删除请求 URL 所指定的资源。
第三章已经看完,
利于理解的图片:
总结:
主要讲述了一些HTTP报文的组成和具体形式,还有各种状态码,400-499 客户端状态码 500-599 服务器端状态码
文字看的越来越多,似乎有点烦躁,看点别的动动手,不能只一味的看理论啊,加油。
------------------
今天仔细看了下HTP权威指南竟然一共有21章节,不过我不怕,一点一滴的来,加油啊。
今晚任务:
把第四章节的 连接管理看完!!!!!
2017年5月21日23:19:36 第四章节已经看完,
笔记:
2017年5月21日22:14:52
第四章 连接管理
1.第三章讲述了HTTP报文的具体格式,HTTP到底是如何连接运作的呢?第四章揭晓。
2.TCP/IP连接一旦建立,客户端和服务器端交换的报文就永远不会消失、受损或失序。
3.HTTP连接其实就是TCP连接和一些连接的规则。是一种可靠连接。
4.浏览器的功能是强大的。
5.其安全版本 HTTPS 就是在 HTTP 和 TCP 之间插入了一个( 称为 TLS 或 SSL
的) 密码加密层。
6.TCP 是通过端口号来保持所有这些连接持续不断地运行。
7.TCP 连接是通过 4 个值来识别的:< 源 IP 地址、 源端口号、 目的 IP 地址、 目的端口号 >
8.TCP 客户端和服务器是如何通过 TCP 套接字接口进行通信的
9.建立TCP连接可能要花费一些时间, 时间长短取决于服务器距离的远近、 服务器的负载情况, 以及
因特网的拥挤程度。
10.TCP 网络时延的大小取决于硬件速度、 网络和服务器的负载, 请求和响应报文
的尺寸, 以及客户端和服务器之间的距离。 TCP 协议的技术复杂性也会对时延产生
巨大的影响。
1.客户端和服务器端要传递数据,需要建立HTTP连接,那么HTTP连接需要建立握手原则。
2.TCP 实现了自己的确认机制来确保数据的成功传输。
3.TCP 慢启动( slow start), 用于防止因特网的突然过载和拥塞。
4.提高 HTTP 的连接性能
并行连接 并行连接可以提升性能,但是当网络带宽一定时,反而会降低访问速度。可以让用户感觉到加载起来更快,多个对象同时加载。
持久连接
管道化连接
复用的连接
5.浏览器确实使用了并行连接, 但它们会将并行连接的总数限制为一个较小
的值( 通常是 4 个)。 服务器可以随意关闭来自特定客户端的超量连接。
6.站点局部性( site locality)。
7.非持久连接会在每个事务结束之后关闭。 持久连接会在不同事务之间保持打开状态, 直到客户端或
服务器决定将其关闭为止。
8.哑代理
9.盲中继( blind relay)
10.TCP 连接是双向的。 TCP 连接的每一端都有一个输入队列和一个
输出队列, 用于数据的读或写。 放入一端输出队列中的数据最终会出现在另一端的
输入队列中。
总结:
这一章节主要介绍客户端和服务器端传输数据需要建立连接,TCP。内容较多,都是文字,需要理解。多看几遍就好。
还有比较重要的一点就是:如何提升HTTP性能,一共有四点,但都不是完美的。
HTTP权威指南第一部分已经终结,已经看完,基础已经看完。第二部分就是HTTP结构。加油。我将继续学习。
2017年5月22日13:29:29
中午利用半个小时时间看HTTP权威指南
开启第二部分 HTTP结构
第五章 web服务器
2017年5月23日23:07:37
任务:
看完第五章开始:
笔记:
第二部分 HTTP结构
第五章 web服务器
1.缓存是通过对常用文档进行本地复制来提高性能、 减少流量的设备。
2.Web 服务器会对 HTTP 请求进行处理并提供响应。
3.所有的 Web 服务器都能够接收请求资源的 HTTP 请求, 将内容回送给客户端。
4.底层操作系统负责管理底层计算机系统的硬件细节, 并提供了 TCP/IP 网络支持、 负责装载 Web 资源
的文件系统以及控制当前计算活动的进程管理功能。
2017年5月23日23:13:02
5.Web 服务器设备( Web server appliance)
6.高性能的 Web 服务器能够同时支持数千条连接。
7.Web 服务器是资源服务器。。
总结:
主要讲述了web服务器是如何接受客户端发送请求,然后接收数据后如何具体处理的。讲的很详细很深刻。加油。
---------------------------------------------分割线-----------------------------------------------------------------
学习: 第六章
2017年5月29日23:49:49
笔记:
2017年5月29日23:50:07
1.Web 代理( proxy) 服务器是网络的中间实体。 代理位于客户端和服务器之间, 扮演
“ 中间人” 的角色, 在各端点之间来回传送 HTTP 报文。
2.Web 上的代理服务器是代表客户端完成事务处理的中间人。
3.有了 Web 代理, 客户端就可以与
代理进行对话, 然后由代理代表客户端与服务器进行交流。 客户端仍然会完成对事
务的处理, 但它是通过代理服务器提供的优质服务来实现的。
4.单个客户端专用的代理被称为私有代理。 众多客户端共享的代理被称为公共代理。
5.代理既是服务器,又是客户端。
6.代理服务器可以实现各种时髦且有用的功能。 它们可以改善安全性, 提高性能, 节
省费用。 代理服务器可以看到并接触到所有流过的 HTTP 流量, 所以代理可以监视
流量并对其进行修改, 以实现很多有用的增值 Web 服务。
总结:
越往后,内容越多,慢慢看吧,重在坚持
--------------------------------------------------分割线---------------------------------------------------
2017年6月3日08:17:07 6.3小节开始学习
笔记:
2017年5月29日23:50:07
1.Web 代理( proxy) 服务器是网络的中间实体。 代理位于客户端和服务器之间, 扮演
“ 中间人” 的角色, 在各端点之间来回传送 HTTP 报文。
2.Web 上的代理服务器是代表客户端完成事务处理的中间人。
3.有了 Web 代理, 客户端就可以与
代理进行对话, 然后由代理代表客户端与服务器进行交流。 客户端仍然会完成对事
务的处理, 但它是通过代理服务器提供的优质服务来实现的。
4.单个客户端专用的代理被称为私有代理。 众多客户端共享的代理被称为公共代理。
5.代理既是服务器,又是客户端。
6.代理服务器可以实现各种时髦且有用的功能。 它们可以改善安全性, 提高性能, 节
省费用。 代理服务器可以看到并接触到所有流过的 HTTP 流量, 所以代理可以监视
流量并对其进行修改, 以实现很多有用的增值 Web 服务。
2017年6月3日08:16:42
1.部署代理服务器的几种方式。
出口代理
访问( 入口) 代理
反向代理
2.代理层次结构是静态的
3.有四种常见方式可以使客户端流量流向代理
修改客户端
修改网络
修改 DNS 的命名空间
4.浏览器都提供了多种配置代理的方式
手工配置
预先配置浏览器
代理的自动配置( Proxy Auto-Configuration, PAC)
WPAD 的代理发现
5.客户端的代理配置 主要就是为代理指定主机和端口