1目录版权声明译者序前言致谢第1章了解Web及网络基础1.1使用HTTP协议访问Web1.2HTTP的诞生1.3网络基础TCP/IP1.4与HTTP关系密切的协议:IP、TCP和DNS1.5负责域名解析的DNS服务1.6各种协议与HTTP协议的关系1.7URI和URL第2章简单的HTTP协议2.1HTTP协议用于客户端和服务器端之间的通信2.2通过请求和响应的交换达成通信2.3HTTP是不保存状态的协议2.4请求URI定位资源2.5告知服务器意图的HTTP方法2.6使用方法下达命令2.7持久连接节省通信量2.8使用Cookie的状态管理第3章HTTP报文内的HTTP信息3.1HTTP报文3.2请求报文及响应报文的结构3.3编码提升传输速率3.4发送多种数据的多部分对象集合3.5获取部分内容的范围请求3.6内容协商返回最合适的内容第4章返回结果的HTTP状态码4.1状态码告知从服务器端返回的请求结果4.22XX成功4.33XX重定向4.44XX客户端错误4.55XX服务器错误第5章与HTTP协作的Web服务器5.1用单台虚拟主机实现多个域名25.2通信数据转发程序:代理、网关、隧道5.3保存资源的缓存第6章HTTP首部6.1HTTP报文首部6.2HTTP首部字段6.3HTTP/1.1通用首部字段6.4请求首部字段6.5响应首部字段6.6实体首部字段6.7为Cookie服务的首部字段6.8其他首部字段第7章确保Web安全的HTTPS7.1HTTP的缺点7.2HTTP+加密+认证+完整性保护=HTTPS第8章确认访问用户身份的认证8.1何为认证8.2BASIC认证8.3DIGEST认证8.4SSL客户端认证8.5基于表单认证第9章基于HTTP的功能追加协议9.1基于HTTP的协议9.2消除HTTP瓶颈的SPDY9.3使用浏览器进行全双工通信的WebSocket9.4期盼已久的HTTP/2.09.5Web服务器管理文件的WebDAV第10章构建Web内容的技术10.1HTML10.2动态HTML10.3Web应用10.4数据发布的格式及语言第11章Web的攻击技术11.1针对Web的攻击技术11.2因输出值转义不完全引发的安全漏洞11.3因设置或设计上的缺陷引发的安全漏洞11.4因会话管理疏忽引发的安全漏洞11.5其他安全漏洞3第1章了解Web及网络基础本章概述了Web是建立在何种技术之上,以及HTTP协议是如何诞生并发展的。我们从其背景着手,来深入了解这部分内容。1.1使用HTTP协议访问Web你知道当我们在网页浏览器(Webbrowser)的地址栏中输入URL时,Web页面是如何呈现的吗?4Web页面当然不能凭空显示出来。根据Web浏览器地址栏中指定的URL,Web浏览器从Web服务器端获取文件资源(resource)等信息,从而显示出Web页面。像这种通过发送请求获取服务器资源的Web浏览器等,都可称为客户端(client)。Web使用一种名为HTTP(HyperTextTransferProtocol,超文本传输协议1)的协议作为规范,完成从客户端到服务器端等一系列运作流程。而协议是指规则的约定。可以说,Web是建立在HTTP协议上通信的。1HTTP通常被译为超文本传输协议,但这种译法并不严谨。严谨的译名应该为“超文本转移协议”。但是前一译法已约定俗成,本书将会沿用。有兴趣的读者可参考图灵社区的相关讨论:http://www.ituring.com.cn/article/1817。——译者注51.2HTTP的诞生在深入学习HTTP之前,我们先来介绍一下HTTP诞生的背景。了解背景的同时也能了解当初制定HTTP的初衷,这样有助于我们更好地理解。1.2.1为知识共享而规划Web1989年3月,互联网还只属于少数人。在这一互联网的黎明期,HTTP诞生了。CERN(欧洲核子研究组织)的蒂姆•伯纳斯-李(TimBernersLee)博士提出了一种能让远隔两地的研究者们共享知识的设想。最初设想的基本理念是:借助多文档之间相互关联形成的超文本(HyperText),连成可相互参阅的WWW(WorldWideWeb,万维网)。现在已提出了3项WWW构建技术,分别是:把SGML(StandardGeneralizedMarkupLanguage,标准通用标记语言)作为页面的文本标记语言的HTML(HyperTextMarkupLanguage,超文本标记语言);作为文档传递协议的HTTP;指定文档所在地址的URL(Uniform6ResourceLocator,统一资源定位符)。WWW这一名称,是Web浏览器当年用来浏览超文本的客户端应用程序时的名称。现在则用来表示这一系列的集合,也可简称为Web。1.2.2Web成长时代1990年11月,CERN成功研发了世界上第一台Web服务器和Web浏览器。两年后的1992年9月,日本第一个网站的主页上线了。日本第一个主页http://www.ib...