如何深入地学习《HTTP权威指南》这本书?

有哪些方便的工具可以用来深入理解枯燥的概念,例如缓存、代理、HTTPS、摘要认证等
关注者
92
被浏览
16742

7 个回答

一般权威指南读得会很痛苦,比如《Git权威指南》,因为涉及的内容太多,太关注细节了,新手反而发蒙。

推荐《图解HTTP》,250页的小书,几天就看完,还带可爱的漫画,特别轻松就可以了解http的报文,状态码,网络层级等概念,等有了这些基础,再去实践和看权威指南,会容易得多。

有时候作者觉得很明显的事情,读者往往不是那个感觉。


更新 2017/3/15: 最近在看 HTTP: the Definitive Guide, 英文版相当好懂,建议中文读起来感觉很痛苦的同学,可以试试看英文版,技术类书籍,翻译过后理解难度很可能不是减少,而是增加。另外 rfc 文件也很重要,这本书里的内容是有些过时,比如 rfc2616,最新版是 rfc7230-7237,但是基本的东西确实还是书里提到的那些。

有人一直说这本书是http圣经,我认为不妥。

我花了几个月的时间,读了它几遍。并且同时参照 Node.js http 实现,自己写验证代码,通过Google 的帮助等等,然后发现这本书需要真去啃,因为读者需要理解HTTP的本质复杂度,并且避免被作者引入的非本质复杂度的干扰。然而我没有办法说花费这个时间是不值得的,因为我已经具备了这个知识无法装作没有知识是怎么地了。这就是所谓的知识的诅咒吧。

外部的看,这本书有些地方必定会引入非本质复杂度:

1. 合著的书,作者达,,,5人
2. 出来的很早 ,2002年第一版本成书,嗯http 1.1 应该是1999年成稿,那会儿HTTP1.1还缺乏历练,以及多种场景的考验

所以内容上可以看到:

1. 罗列常常缺乏重点。比如第十一章 客户端识别,既然cookie是最有效的 ,何不第一个讲。那些胖URL客户端IP什么的,用的人极少,不应该摆在前面。best first 最好。20多页的东西啊。

2. 缺乏层次分离。比如第四章 连接管理底层的TCP连接即使不讲,是一定可以讲清楚HTTP的连接优化机制的,讲了TCP连接实际上能做的就是调整参数,但是那些参数又是久经考验的,不建议改。这个。。。。

3. 缺少代码验证,导致文字模糊难以澄清,比如4.5 keep alive,以及第八章 集成点

4. 概念提出太早。概念是一本书的骨架,但是骨头得包起来,包到肉里,不然太难嚼。比如第一章概念登场,却缺乏案例和场景的支撑。

最近在看pro git ,它甚至号称学习git命令必须得首先了解它的实现,这就有点邪气了。然后我也就真的按他的说法来,发现确实无需了解实现就理解和学习命令的。于是,我发现这样的类似的层次分离问题,其实是比较常见的问题,所以不能太过求全,毕竟早年间的东西,出来的快,市场需要,再加上IT作家通常都并不擅长写作。想要学就得啃。晚近一点的,就会好很多。

开始我提到了圣经,巧的是我也读过圣经,从难以阅读的角度,也可以说是圣经。我收回我的话:)。读这本书的话,记得避开就好了。看不懂就写代码,还有Google大兄弟的嘛。

利益相关:我尽量客观,但是我是利益相关的。看我的主页就知道。