2021年在专业书籍的阅读方面相对困乏,伴随学习的深入,越来越感觉到底层知识在解决某个极为细节的问题过程中的重要性,所以选择静下心来进行阅读,并将阅读的书籍以笔记的形式在博客上进行打卡,欢迎大家进行监督。
一、书籍信息
? 出版社:人民邮电出版社 ? 版本号:2014年5月第一版 ? 阅读日期:2021年9月25日-2021年10月4日 相对来说这本书给人的整体感觉是在讲解各种协议在网络通信所扮演的角色,但是并未讲解各种协议是如何实现其自身,讲得相对浅显,拿来入门比较合适 ![HTTP图书图片](https://img-blog.csdnimg.cn/img_convert/dad0f72362f83047cf258fdb995e70da.png)
二、读书笔记
第一章 了解Web及其网络基础
这一章很简单地介绍了TCP/IP的四层结构:应用层、网络层、运输层、链路层 利用图解的方式介绍了HTTP发送请求从服务端到接收端发生了哪些事情、TCP/IP的三次握手,DNS解析在获取Web服务器上浏览器资源的角色,URL是URI的子集等内容;
第二章 简单的HTTP协议
- HTTP的特性:不保存状态的协议,并在此基础上引入介绍了设置Cookie相关方法来解决保存状态的相关问题。
- HTTP 1.0和1.1的相关方法,包括但不限于方法、说明、支持版本
? 利用Keep-alive(除非TCP连接一方明确提出断开连接,否则始终保持连接),来实现TCP的持续连接,从而降低服务端的压力,实现发送请求的管线化 ? 利用隧道协议来支持并行发送请求 ? 使用Cookie进行状态管理
第三章 HTTP报文内的HTTP信息
这章讲解了 ? HTTP报文的整体结构、请求/响应报文的结构划分 ? 编码提升效率的两种方式:压缩传输,如gzip、compress编码,分块传送 ? 获取部分范围的内容请求(Content-Range) ? 内容协商的传输请求
第四章 返回结果的HTTP状态码
? 状态码的类别:
从表格中不难看到,三位状态码的第一位表示归属类别,后两位无固定划分 在这一章中,作者着重介绍了重定向的几种情况,如301、302、303、307几种情况,想要详细了解重定向的同学可以看一看
第五章 与服务端协作的Web服务器
? 实体主机如何用一个IP地址识别多个域名(host字段的作用) ? 通信数据转发:代理、网关和隧道各自的作用 ? 缓存的作用(缓存服务器在HTTP协议传输中起到的作用)
第六章 HTTP首部
? HTTP报文首部的结构 ? HTTP首部字段类型:通用首部字段、请求首部字段、响应首部字段、实体首部字段
通用首部字段: Cache-Control->缓存控制 Connection->连接的管理 Upgrade->升级为某种特定的协议 Via->代理服务器的相关信息 Warning->错误通知
请求首部字段: User-Agent->发送方的信息,包括途经的中转服务器 Accept->能够接受的媒体优先级及其权重,以及媒体的编码方式 Authorization->用户认证的信息 Host->代理服务器在主机上接受的域名 If-Modified-Since->返回在指定时间后修改的资源 If-Range->如果更新,则返回部分报文段 Max-forwards->最大查询字段 Proxy-Authorization->客户端接受到服务端的查询认证时,在报文中添加的认证信息
响应首部字段: Accept-Range->能处理范围的请求 Age->缓存服务器告知客户端,源服务器在多久前响应了缓存服务器的更新 E-tag->标识符,分为强标识符和弱标识符 Server->告知客户端服务器上安装的HTTP服务器应用的版本信息、版本号和安装时的启用项
实体首部字段: Allow->服务器支持的方法 Content-Coding->实体部分的编码方式 Last-Modified->上一次修改的时间 Expires->实体失效的时间
第七章 确保Web安全的HTTPS
? HTTP的缺点 1.通信使用明文,易被监听窃取 2.没有对通信双方的身份进行认证 3.无法保证报文的完整性,可能得到篡改 ? 加密处理 1.通信加密(SSL+TLS),对通信进行套接字处理 2.内容加密(对报文内容进行加密) ? SSL技术 ? 公开密钥加密技术 1.对称密钥加密技术 2.使用两把密钥的公开加密技术 3.HTTPS采用的混合加密技术:保证传输的安全性和速率 ? HTTPS的安全通信技术 ? 使用SSL加密带来的加载速率变慢和服务器负荷上升代价
第八章 确认访问用户身份的认证
? Basic认证(用户ID+密码->Base64编码->服务器) ? Digest(认证->质询->质询码) ? SSL客户端认证 ? 基于表单的认证 ? Session管理和Cookie的应用
第九章 基于HTTP的功能追加协议
? HTTP的相关瓶颈协议 ? Ajax ? 全双工通信的Websocket协议 ? HTTP 2.0 ? WebDAV的Web服务器的文件管理技术
第十章 构建Web内容的技术
? HTML、CSS、JSON、XML、CGI技术 ? 基于Java的Servlet技术 这章会前端的可以不看。。
第十一章 Web攻击技术
? 客户端篡改请求 ? 针对Web的攻击模式 1.主动攻击 2.被动攻击 ? 跨站脚本攻击 ? SQL攻击 ? OS注入攻击 ? HTTP首部注入攻击 ? 邮件首部注入攻击 ? 目录遍历攻击 ? 远程文件包含漏洞 ? 开放重定向 ? 会话挟持和会话固定攻击
三、读书总结
这本书总体来说,对HTTP的涉猎比较全面:结构、客户端与服务端、安全都有所涉及,也普及了一些在写书时相对新颖的技术,如Websocket和JSON等技术,但因为图书出版时间的关系,图中的技术很多也进入了市场应用,一个普通的初级开发人员就可以接触到这些相关技术,但并不影响其作为一本给初级乃至中级程序员进行知识普及和查漏补缺的良好书籍。
|