1. 程式人生 > >《HTTP權威指南》高清中文版pdf

《HTTP權威指南》高清中文版pdf

保護密碼 web客戶端 bottom 錯誤 file 切換 企業 數字證書 概念

下載地址:網盤下載

圖書簡介

編輯《HTTP權威指南》由古爾利所著,《HTTP權威指南》詳細解釋了如何用HTTP來開發基於Web的應用程序,核心的因特網協議如何與架構構建塊交互,如何正確實現因特網客戶和服務器等。《HTTP權威指南》的中心內容是HTTP,本質是理解Web的工作原理,以及如何將這些知識應用到Web編程和管理之中,主要涵蓋HTTP的技術運作方式、產生動機、性能和目標以及一些相關技術問題。 《HTTP權威指南》適合所有想了解HTTP和Web底層結構的人閱讀。

編輯推薦

編輯HTTP(HyperText Transfer Protocol,超文本傳輸協議)是Web客戶端與服務器交互文檔和信息時所使用的協議,是每個成功Web事務的幕後推手。眾所周知,我們每天訪問公司內部網絡、搜索絕版書籍、研究統計信息時所使用的瀏覽器的核心就是HTTP。但HTTP的應用遠不僅僅是瀏覽Web內容。由於HTTP既簡單又普及,很多其他網絡應用程序也選擇了它,尤其是采用SOAP和XML-RPC這樣的Web服務。
  詳細解釋了HTTP協議,包括它是如何工作的,如何用它來開發基於Web的應用程序。但本書並不只介紹了HTTP,還探討了HTTP有效工作所依賴的所有其他核心因特網技術。盡管HTTP是本書的中心內容,但本書的本質是理解Web的工作原理,以及如何將這些知識應用到Web編程和管理之中去,主要涵蓋HTTP的技術運作方式、產生動機、性能和目標,以及一些相關技術問題。
  本書是HTTP協議及相關Web技術方面的著作,主要內容包括:
  HTTP方法、首部以及狀態碼
  優化代理和緩存的方法
  設計Web機器人和爬蟲的策略
  Cookies、認證以及安全HTTP
  國際化及內容協商
  重定向及負載平衡策略
  要想高效地進行Web開發,所有Web程序員、管理員和應用程序開發者都應該熟悉HTTP。很多書籍只介紹了Web的使用方式,而本書則深入說明了Web的工作原理。[1]

前言

編輯超文本傳輸協議(Hypertext Transfer Protocol,HTTP)是在萬維網上進行通信時所使用的協議方案。HTTP有很多應用,但最著名的是用於web瀏覽器和web服務器之間的雙工通信。HTTP起初是一個簡單的協議,因此你可能會認為關於這個協議沒有太多好說的。但現在,你手上拿著的是卻一本兩磅重 的書。如果你對我們怎麽會寫出一本650頁 的關於HTTP的書感到奇怪的話,可以去看一下目錄。本書不僅僅是一本HTTP首部的參考手冊;它是一本名副其實的web結構聖經。本書中,我們嘗試著將HTTP中一些互相關聯且常被誤解的規則梳理清楚,並編寫了一系列基於各種主題的章節,對HTTP各方面的特性進行了介紹。縱觀全書,我們對HTTP“為什麽”這樣做進行了詳細的解釋,而不僅僅停留在它是“怎麽做”的。而且,為了節省大家尋找參考文獻的時間,我們還對很多HTTP應用程序正常工作所必須的、重要的非HTTP技術進行了介紹。在組織得便於使用的附錄中,可以找到按照字母排序的首部參考(這些首部構成了最常見的HTTP文本的基礎)。我們希望這種概念性的設計有助於讀者對HTTP的使用。本書是為所有希望理解HTTP以及Web底層結構的人編寫的。軟硬件工程師也可以將本書作為HTTP及相關web技術的條理清楚的參考書使用。系統架構師和網絡管理員可以通過本書更好地了解如何設計、實現並管理復雜的網絡架構。性能工程師和分析人員可以從高速緩存和性能優化的相關章節中獲益。市場營銷和咨詢專家可以通過概念的介紹更好地理解web技術的前景。本書對一些常見的誤解進行了說明,推薦了“各種使用訣竅”,提供了便捷的參考資料,並且對枯燥且令人費解的標準規範進行了可讀性很強的介紹。在這本書裏,我們對Web正常工作所必須且互相關聯的技術進行了詳細的介紹。本書是很多對因特網技術充滿熱情的人經過大量工作寫成的。希望對你有所幫助。運行實例:Joe的硬件商店本書的很多章節都涉及到了一個假想的在線硬件及家裝商店實例,通過這個名為“Joe硬件”的商店對一些技術概念進行了說明。我們為這個商店構建了一個真實的web站點,以便大家對書中的部分實例進行測試。只要本書仍在銷售,我們就會一直維護好這個web站點。[1]

作者簡介

編輯David Gourley是Endeca的首席技術官(Chief Technology Officer),負責Endeca產品的研究及開發。Endeca開發的因特網及內部網絡信息訪問解決方案為企業級數據的導航及研究提供了一些新的方式。在到Endeca工作之前,David是Inktomi基礎工程組的一員,他在那兒幫助開發了Inktomi的因特網搜索數據庫,是Inktomi的Web緩存產品的主要開發者。David在加州大學伯克利分校獲得了計算機科學的學士學位,還擁有Web技術方面的幾項專利。Brian Totty最近出任了Inktomi公司(這是1996年他參與建立的一家公司)研發部副總裁,在公司中他負責Web緩存、流媒體及因特網搜索技術的研發工作。他曾是Silicon Graphics公司的一名科學家,他在那兒為高性能網絡和超級計算機系統設計軟件並對其進行優化。在那之前,他是蘋果計算機公司高級技術組的一名工程師。Brian在伊利諾伊大學Urbana-Champaign分校獲得了計算機科學的博士學位,在MIT獲得了計算機科學及電子工程的學士學位,在那裏他獲得了計算機系統研究的Organick獎。他還為加州大學擴展系統開發並講授了一些屢獲殊榮的因特網技術方面的課程。Marjorie Sayer在Inktomi公司負責編寫Web緩存方面的軟件。在加州大學伯克利分校獲得了數學碩士和博士學位之後,一直致力於數學課程的改革。從1990年開始致力於能量資源管理、並行系統軟件、電話和網絡方面的寫作。Sailu Reddy目前在Inktomi公司負責嵌入式的性能增強型HTTP 代理的開發。Sailu從事復雜軟件系統的開發已經有12年了,從1995年開始深入Web架構的研發工作。他是Netscape第一臺Web服務器、Web 代理產品,以及後面幾代產品的核心工程師。他具備HTTP應用程序、數據壓縮技術、數據庫引擎以及合作管理等方面的技術經驗。Sailu在亞裏桑那大學獲得了信息系統的碩士學位並握有Web技術方面的多項專利。Anshu Aggarwal是Inktomi公司的工程總監。他領導著Inktomi公司Web緩存產品的協議處理工程組,從1997年就開始參與Inktomi的Web技術設計工作。Anshu在科羅拉多大學Boulder分校獲得了計算機科學的碩士和博士學位,從事分布式多處理器的內存一致性技術研究。他還擁有電子工程的碩士和學士學位。Anshu撰寫了多篇技術論文,還擁有兩項專利。[2]

圖書目錄

編輯目錄
  第一部分  HTTP:Web 的基礎
  第1章  HTTP 概述 3
  1.1  HTTP——因特網的多媒體信使    4
  1.2  Web 客戶端和服務器 4
  1.3  資源  5
  1.3.1  媒體類型    6
  1.3.2  URI    7
  1.3.3  URL 7
  1.3.4  URN 8
  1.4  事務  9
  1.4.1  方法 9
  1.4.2  狀態碼    10
  1.4.3  Web 頁面中可以包含多個對象 10
  1.5  報文 11
  1.6  連接 13
  1.6.1  TCP/IP    13
  1.6.2  連接、IP 地址及端口號    14
  1.6.3  使用Telnet 實例    16
  1.7  協議版本 18
  1.8  Web 的結構組件    19
  1.8.1  代理    19
  1.8.2  緩存    20
  1.8.3  網關    20
  1.8.4  隧道    21
  1.8.5  Agent 代理    21
  1.9  起始部分的結束語    22
  1.10  更多信息 22
  1.10.1  HTTP 協議信息 22
  1.10.2  歷史透視    23
  1.10.3  其他萬維網信息    23
  第2章 URL 與資源    25
  2.1  瀏覽因特網資源    26
  2.2  URL 的語法    28
  2.2.1  方案——使用什麽協議    29
  2.2.2  主機與端口    30
  2.2.3  用戶名和密碼    30
  2.2.4  路徑    31
  2.2.5  參數    31
  2.2.6  查詢字符串    32
  2.2.7  片段    33
  2.3  URL 快捷方式    34
  2.3.1  相對URL 34
  2.3.2  自動擴展URL 37
  2.4  各種令人頭疼的字符    38
  2.4.1  URL 字符集 38
  2.4.2  編碼機制 38
  2.4.3  字符限制 39
  2.4.4  另外一點說明    40
  2.5  方案的世界 40
  2.6  未來展望 42
  2.7  更多信息 44
  第3章  HTTP 報文    45
  3.1  報文流    46
  3.1.1  報文流入源端服務器    46
  3.1.2  報文向下遊流動    47
  3.2  報文的組成部分    47
  3.2.1  報文的語法    48
  3.2.2  起始行    50
  3.2.3  首部    53
  3.2.4  實體的主體部分    55
  3.2.5  版本0.9 的報文    55
  3.3  方法 56
  3.3.1  安全方法 56
  3.3.2  GET 56
  3.3.3  HEAD    57
  3.3.4  PUT 57
  3.3.5  POST    58
  3.3.6  TRACE    58
  3.3.7  OPTIONS 60
  3.3.8  DELETE    60
  3.3.9  擴展方法 61
  3.4  狀態碼    62
  3.4.1  100 ~ 199——信息性狀態碼    62
  3.4.2  200 ~ 299——成功狀態碼    63
  3.4.3  300 ~ 399——重定向狀態碼    64
  3.4.4  400 ~ 499——客戶端錯誤狀態碼    68
  3.4.5  500 ~ 599——服務器錯誤狀態碼    69
  3.5  首部 70
  3.5.1  通用首部 71
  3.5.2  請求首部 72
  3.5.3  響應首部 74
  3.5.4  實體首部 75
  3.6  更多信息 77
  第4章  連接管理    79
  4.1  TCP 連接    80
  4.1.1  TCP 的可靠數據管道    80
  4.1.2  TCP 流是分段的、由IP 分組傳送 81
  4.1.3  保持TCP 連接的正確運行    82
  4.1.4  用TCP 套接字編程 84
  4.2  對TCP 性能的考慮 85
  4.2.1  HTTP 事務的時延    86
  4.2.2  性能聚焦區域    87
  4.2.3  TCP 連接的握手時延    87
  4.2.4  延遲確認 88
  4.2.5  TCP 慢啟動    89
  4.2.6  Nagle 算法與TCP_NODELAY    89
  4.2.7  TIME_WAIT 累積與端口耗盡    90
  4.3  HTTP 連接的處理    91
  4.3.1  常被誤解的Connection 首部 91
  4.3.2  串行事務處理時延    92
  4.4  並行連接 94
  4.4.1  並行連接可能會提高頁面的加載速度    94
  4.4.2  並行連接不一定更快    95
  4.4.3  並行連接可能讓人“感覺”更快一些    95
  4.5  持久連接 96
  4.5.1  持久以及並行連接    96
  4.5.2  HTTP/1.0+ keep-alive 連接    97
  4.5.3  Keep-Alive 操作    98
  4.5.4  Keep-Alive 選項    98
  4.5.5  Keep-Alive 連接的限制和規則    99
  4.5.6  Keep-Alive 和啞代理 100
  4.5.7  插入Proxy-Connection 102
  4.5.8  HTTP/1.1 持久連接    104
  4.5.9  持久連接的限制和規則 104
  4.6  管道化連接    105
  4.7  關閉連接的奧秘 106
  4.7.1 “ 任意”解除連接 106
  4.7.2  Content-Length 及截尾操作    107
  4.7.3  連接關閉容限、重試以及冪等性 107
  4.7.4  正常關閉連接 108
  4.8  更多信息 110
  4.8.1  HTTP 連接 110
  4.8.2  HTTP 性能問題 110
  4.8.3  TCP/IP 111
  第二部分  HTTP 結構
  第5章  Web 服務器 115
  5.1  各種形狀和尺寸的Web 服務器 116
  5.1.1  Web 服務器的實現 116
  5.1.2  通用軟件Web 服務器    117
  5.1.3  Web 服務器設備 117
  5.1.4  嵌入式Web 服務器    118
  5.2  最小的Perl Web 服務器 118
  5.3  實際的Web 服務器會做些什麽 120
  5.4  第一步——接受客戶端連接 121
  5.4.1  處理新連接 121
  5.4.2  客戶端主機名識別 122
  5.4.3  通過ident 確定客戶端用戶 122
  5.5  第二步——接收請求報文 123
  5.5.1  報文的內部表示法 124
  5.5.2  連接的輸入/ 輸出處理結構    125
  5.6  第三步——處理請求 126
  5.7  第四步——對資源的映射及訪問    126
  5.7.1  docroot    127
  5.7.2  目錄列表    129
  5.7.3  動態內容資源的映射 130
  5.7.4  服務器端包含項 131
  5.7.5  訪問控制    131
  5.8  第五步——構建響應 131
  5.8.1  響應實體    131
  5.8.2  MIME 類型 132
  5.8.3  重定向    133
  5.9  第六步——發送響應 134
  5.10  第七步——記錄日誌    134
  5.11  更多信息 134
  第6章  代理    135
  6.1  Web 的中間實體 136
  6.1.1  私有和共享代理 136
  6.1.2  代理與網關的對比 137
  6.2  為什麽使用代理 138
  6.3  代理會去往何處 143
  6.3.1  代理服務器的部署 144
  6.3.2  代理的層次結構 144
  6.3.3  代理是如何獲取流量的 147
  6.4  客戶端的代理設置 148
  6.4.1  客戶端的代理配置:手工配置    149
  6.4.2  客戶端代理配置:PAC 文件    149
  6.4.3  客戶端代理配置:WPAD    150
  6.5  與代理請求有關的一些棘手問題    151
  6.5.1  代理URI 與服務器URI 的不同    151
  6.5.2  與虛擬主機一樣的問題 152
  6.5.3  攔截代理會收到部分URI 153
  6.5.4  代理既可以處理代理請求,也可以處理服務器請求    154
  6.5.5  轉發過程中對URI 的修改 154
  6.5.6  URI 的客戶端自動擴展和主機名解析 155
  6.5.7  沒有代理時URI 的解析 155
  6.5.8  有顯式代理時URI 的解析 156
  6.5.9  有攔截代理時URI 的解析 157
  6.6  追蹤報文 158
  6.6.1  Via 首部 158
  6.6.2  TRACE 方法    162
  6.7  代理認證 164
  6 | 目錄
  6.8  代理的互操作性 165
  6.8.1  處理代理不支持的首部和方法    166
  6.8.2  OPTIONS:發現對可選特性的支持 166
  6.8.3  Allow 首部 167
  6.9  更多信息 167
  第7章  緩存    169
  7.1  冗余的數據傳輸 170
  7.2  帶寬瓶頸 170
  7.3  瞬間擁塞 171
  7.4  距離時延 172
  7.5  命中和未命中的 173
  7.5.1  再驗證    173
  7.5.2  命中率    175
  7.5.3  字節命中率 176
  7.5.4  區分命中和未命中的情況    176
  7.6  緩存的拓撲結構 177
  7.6.1  私有緩存    177
  7.6.2  公有代理緩存 177
  7.6.3  代理緩存的層次結構 179
  7.6.4  網狀緩存、內容路由以及對等緩存    180
  7.7  緩存的處理步驟 181
  7.7.1  第一步——接收 181
  7.7.2  第二步——解析 182
  7.7.3  第三步——查找 182
  7.7.4  第四步——新鮮度檢測 182
  7.7.5  第五步——創建響應 182
  7.7.6  第六步——發送 183
  7.7.7  第七步——日誌 183
  7.7.8  緩存處理流程圖 183
  7.8  保持副本的新鮮 183
  7.8.1  文檔過期    184
  7.8.2  過期日期和使用期 185
  7.8.3  服務器再驗證 185
  7.8.4  用條件方法進行再驗證 186
  7.8.5  If-Modified-Since:Date 再驗證    187
  7.8.6  If-None-Match:實體標簽再驗證    189
  7.8.7  強弱驗證器 190
  7.8.8  什麽時候應該使用實體標簽和最近修改日期    190
  7.9  控制緩存的能力 191
  7.9.1  no-Store 與no-Cache 響應首部 191
  7.9.2  max-age 響應首部    192
  7.9.3  Expires 響應首部    192
  7.9.4  must-revalidate 響應首部 192
  7.9.5  試探性過期 193
  7.9.6  客戶端的新鮮度限制 194
  7.9.7  註意事項    194
  7.10  設置緩存控制    195
  7.10.1  控制Apache 的HTTP 首部    195
  7.10.2  通過HTTP-EQUIV 控制HTML 緩存    196
  7.11  詳細算法 197
  7.11.1  使用期和新鮮生存期    198
  7.11.2  使用期的計算    198
  7.11.3  完整的使用期計算算法    201
  7.11.4  新鮮生存期計算    202
  7.11.5  完整的服務器——新鮮度算法    202
  7.12  緩存和廣告    204
  7.12.1  發布廣告者的兩難處境    204
  7.12.2  發布者的響應    204
  7.12.3  日誌遷移    205
  7.12.4  命中計數和使用限制    205
  7.13  更多信息 205
  第8章  集成點:網關、隧道及中繼    207
  8.1  網關 208
  8.2  協議網關 210
  8.2.1  HTTP/*:服務器端Web 網關 211
  8.2.2  HTTP/HTTPS:服務器端安全網關 212
  8.2.3  HTTPS/HTTP 客戶端安全加速器網關    212
  8.3  資源網關 213
  8.3.1  CGI 215
  8.3.2  服務器擴展API 215
  8.4  應用程序接口和Web 服務 216
  8.5  隧道 217
  8.5.1  用CONNECT 建立HTTP 隧道 217
  8.5.2  數據隧道、定時及連接管理    219
  8.5.3  SSL 隧道 219
  8.5.4  SSL 隧道與HTTP/HTTPS 網關的對比 220
  8.5.5  隧道認證    221
  8.5.6  隧道的安全性考慮 221
  8.6  中繼 222
  8.7  更多信息 224
  第9章  Web 機器人 225
  9.1  爬蟲及爬行方式 226
  9.1.1  從哪兒開始:根集 226
  9.1.2  鏈接的提取以及相對鏈接的標準化    227
  9.1.3  避免環路的出現 228
  9.1.4  循環與復制 228
  9.1.5  面包屑留下的痕跡 229
  9.1.6  別名與機器人環路 230
  9.1.7  規範化URL    230
  9.1.8  文件系統連接環路 231
  9.1.9  動態虛擬Web 空間    232
  9.1.10  避免循環和重復    233
  9.2  機器人的HTTP 236
  9.2.1  識別請求首部 236
  9.2.2  虛擬主機    236
  9.2.3  條件請求    237
  9.2.4  對響應的處理 238
  9.2.5  User-Agent 導向 239
  9.3  行為不當的機器人 239
  9.4  拒絕機器人訪問 240
  9.4.1  拒絕機器人訪問標準 241
  9.4.2  Web 站點和robots.txt 文件 242
  9.4.3  robots.txt 文件的格式 243
  9.4.4  其他有關robots.txt 的知識 246
  9.4.5  緩存和robots.txt 的過期    246
  9.4.6  拒絕機器人訪問的Perl 代碼    246
  9.4.7  HTML 的robot-control 元標簽    249
  9.5  機器人的規範    251
  9.6  搜索引擎 254
  9.6.1  大格局    255
  9.6.2  現代搜索引擎結構 255
  9.6.3  全文索引    255
  9.6.4  發布查詢請求 257
  9.6.5  對結果進行排序,並提供查詢結果    258
  9.6.6  欺詐 258
  9.7  更多信息 258
  第10章  HTTP-NG    261
  10.1  HTTP 發展中存在的問題 262
  10.2  HTTP-NG 的活動 263
  10.3  模塊化及功能增強 263
  10.4  分布式對象    264
  10.5  第一層——報文傳輸    264
  10.6  第二層——遠程調用    265
  10.7  第三層——Web 應用    265
  10.8  WebMUX    265
  10.9  二進制連接協議    266
  10.10  當前的狀態    267
  10.11  更多信息    267
  第三部分  識別、認證與安全
  第11章  客戶端識別與cookie 機制    271
  11.1  個性化接觸    272
  11.2  HTTP 首部 273
  11.3  客戶端IP 地址 274
  11.4  用戶登錄 275
  11.5  胖URL 277
  11.6  cookie    278
  11.6.1  cookie 的類型 278
  11.6.2  cookie 是如何工作的 279
  11.6.3  cookie 罐:客戶端的狀態    280
  11.6.4  不同站點使用不同的cookie 282
  11.6.5  cookie 成分 283
  11.6.6  cookies 版本0(Netscape)    284
  11.6.7  cookies 版本1(RFC 2965) 285
  11.6.8  cookie 與會話跟蹤 288
  11.6.9  cookie 與緩存 290
  11.6.10  cookie、安全性和隱私    291
  11.7  更多信息 292
  第12章  基本認證機制 293
  12.1  認證    294
  12.1.1  HTTP 的質詢/ 響應認證框架    294
  12.1.2  認證協議與首部 295
  12.1.3  安全域 296
  12.2  基本認證 297
  12.2.1  基本認證實例 298
  12.2.2  Base-64 用戶名/ 密碼編碼    298
  12.2.3  代理認證 299
  12.3  基本認證的安全缺陷    300
  12.4  更多信息 301
  第13章  摘要認證    303
  13.1  摘要認證的改進    304
  13.1.1  用摘要保護密碼 304
  13.1.2  單向摘要 306
  13.1.3  用隨機數防止重放攻擊    307
  13.1.4  摘要認證的握手機制 307
  13.2  摘要的計算    308
  13.2.1  摘要算法的輸入數據 308
  13.2.2  算法H(d) 和KD(s,d) 310
  13.2.3  與安全性相關的數據(A1) 310
  13.2.4  與報文有關的數據(A2) 310
  13.2.5  摘要算法總述    311
  13.2.6  摘要認證會話 312
  13.2.7  預授權 312
  13.2.8  隨機數的選擇 315
  13.2.9  對稱認證 315
  13.3  增強保護質量    316
  13.3.1  報文完整性保護 316
  13.3.2  摘要認證首部 317
  13.4  應該考慮的實際問題    317
  13.4.1  多重質詢 318
  13.4.2  差錯處理 318
  13.4.3  保護空間 318
  13.4.4  重寫URI 319
  13.4.5  緩存    319
  13.5  安全性考慮    320
  13.5.1  首部篡改 320
  13.5.2  重放攻擊 320
  13.5.3  多重認證機制 320
  13.5.4  詞典攻擊 321
  13.5.5  惡意代理攻擊和中間人攻擊 321
  13.5.6  選擇明文攻擊 321
  13.5.7  存儲密碼 322
  13.6  更多信息 322
  第14章  安全HTTP 323
  14.1  保護HTTP 的安全    324
  14.2  數字加密 326
  14.2.1  密碼編制的機制與技巧    326
  14.2.2  密碼    327
  14.2.3  密碼機 328
  14.2.4  使用了密鑰的密碼 328
  14.2.5  數字密碼 328
  14.3  對稱密鑰加密技術    330
  14.3.1  密鑰長度與枚舉攻擊 330
  14.3.2  建立共享密鑰 332
  14.4  公開密鑰加密技術    332
  14.4.1  RSA    333
  14.4.2  混合加密系統和會話密鑰    334
  14.5  數字簽名 334
  14.6  數字證書 336
  14.6.1  證書的主要內容 336
  14.6.2  X.509 v3 證書 337
  14.6.3  用證書對服務器進行認證    338
  14.7  HTTPS——細節介紹    339
  14.7.1  HTTPS 概述 339
  14.7.2  HTTPS 方案 340
  14.7.3  建立安全傳輸 341
  14.7.4  SSL 握手 341
  14.7.5  服務器證書 343
  14.7.6  站點證書的有效性 344
  14.7.7  虛擬主機與證書 345
  14.8  HTTPS 客戶端實例    345
  14.8.1  OpenSSL 346
  14.8.2  簡單的HTTPS 客戶端    347
  14.8.3  執行OpenSSL 客戶端    350
  14.9  通過代理以隧道形式傳輸安全流量    351
  14.10  更多信息    353
  14.10.1  HTTP 安全性    353
  14.10.2  SSL 與TLS 353
  14.10.3  公開密鑰基礎設施 354
  14.10.4  數字密碼 354
  第四部分  實體、編碼和國際化
  第15章  實體和編碼 357
  15.1  報文是箱子,實體是貨物    359
  15.2  Content-Length: 實體的大小 361
  15.2.1  檢測截尾 361
  15.2.2  錯誤的Content-Length    362
  15.2.3  Content-Length 與持久連接 362
  15.2.4  內容編碼 362
  15.2.5  確定實體主體長度的規則    362
  15.3  實體摘要 364
  15.4  媒體類型和字符集    364
  15.4.1  文本的字符編碼 365
  15.4.2  多部分媒體類型 365
  15.4.3  多部分表格提交 366
  15.4.4  多部分範圍響應 367
  15.5  內容編碼 368
  15.5.1  內容編碼過程 368
  15.5.2  內容編碼類型 369
  15.5.3  Accept-Encoding 首部    369
  15.6  傳輸編碼和分塊編碼    371
  15.6.1  可靠傳輸 371
  15.6.2  Transfer-Encoding 首部 372
  15.6.3  分塊編碼 373
  15.6.4  內容編碼與傳輸編碼的結合 375
  15.6.5  傳輸編碼的規則 375
  15.7  隨時間變化的實例    375
  15.8  驗證碼和新鮮度    376
  15.8.1  新鮮度 377
  15.8.2  有條件的請求與驗證碼    378
  15.9  範圍請求 380
  15.10  差異編碼    382
  15.11  更多信息    385
  第16章  國際化    387
  16.1  HTTP 對國際性內容的支持 388
  16.2  字符集與HTTP    389
  16.2.1  字符集是把字符轉換為二進制碼的編碼 389
  16.2.2  字符集和編碼如何工作    390
  16.2.3  字符集不對,字符就不對    391
  16.2.4  標準化的MIME charset 值    391
  16.2.5  Content-Type 首部和Charset 首部以及META 標誌    393
  16.2.6  Accept-Charset 首部    393
  16.3  多語言字符編碼入門    394
  16.3.1  字符集術語 394
  16.3.2  字符集的命名很糟糕 395
  16.3.3  字符    396
  16.3.4  字形、連筆以及表示形式    396
  16.3.5  編碼後的字符集 397
  16.3.6  字符編碼方案 399
  16.4  語言標記與HTTP 402
  16.4.1  Content-Language 首部    402
  16.4.2  Accept-Language 首部    403
  16.4.3  語言標記的類型 404
  16.4.4  子標記 404
  16.4.5  大小寫 405
  16.4.6  IANA 語言標記註冊    405
  16.4.7  第一個子標記——名字空間 405
  16.4.8  第二個子標記——名字空間 406
  16.4.9  其余子標記——名字空間    407
  16.4.10  配置和語言有關的首選項    407
  16.4.11  語言標記參考表    407
  16.5  國際化的URI    408
  16.5.1  全球性的可轉抄能力與有意義的字符的較量    408
  16.5.2  URI 字符集合 408
  16.5.3  轉義和反轉義 409
  16.5.4  轉義國際化字符 409
  16.5.5  URI 中的模態切換 410
  16.6  其他需要考慮的地方    410
  16.6.1  首部和不合規範的數據    410
  16.6.2  日期    411
  16.6.3  域名    411
  16.7  更多信息 411
  16.7.1  附錄    411
  16.7.2  互聯網的國際化 411
  16.7.3  國際標準 412
  第17章  內容協商與轉碼 413
  17.1  內容協商技術    414
  17.2  客戶端驅動的協商    415
  17.3  服務器驅動的協商    415
  17.3.1  內容協商首部集 416
  17.3.2  內容協商首部中的質量值    417
  17.3.3  隨其他首部集而變化 417
  17.3.4  Apache 中的內容協商 417
  17.3.5  服務器端擴展 418
  17.4  透明協商 419
  17.4.1  進行緩存與備用候選 419
  17.4.2  Vary 首部    420
  17.5  轉碼    422
  17.5.1  格式轉換 422
  17.5.2  信息綜合 423
  17.5.3  內容註入 423
  17.5.4  轉碼與靜態預生成的對比    423
  17.6  下一步計劃    424
  17.7  更多信息 424
  第五部分  內容發布與分發
  第18章  Web 主機托管    429
  18.1  主機托管服務    430
  18.2  虛擬主機托管    431
  18.2.1  虛擬服務器請求缺乏主機信息    432
  18.2.2  設法讓虛擬主機托管正常工作    433
  18.2.3  HTTP/1.1 的Host 首部    437
  18.3  使網站更可靠    438
  18.3.1  鏡像的服務器集群 438
  18.3.2  內容分發網絡 440
  18.3.3  CDN 中的反向代理緩存 440
  18.3.4  CDN 中的代理緩存    440
  18.4  讓網站更快    441
  18.5  更多信息 441
  第19章  發布系統    443
  19.1  FrontPage 為支持發布而做的服務器擴展 444
  19.1.1  FrontPage 服務器擴展    444
  19.1.2  FrontPage 術語表    445
  19.1.3  FrontPage 的RPC 協議    445
  19.1.4  FrontPage 的安全模型    448
  19.2  WebDAV 與協作寫作    449
  19.2.1  WebDAV 的方法 449
  19.2.2  WebDAV 與XML    450
  19.2.3  WebDAV 首部集 451
  19.2.4  WebDAV 的鎖定與防止覆寫 452
  19.2.5  LOCK 方法 453
  19.2.6  UNLOCK 方法    456
  19.2.7  屬性和元數據 456
  19.2.8  PROPFIND 方法 457
  19.2.9  PROPPATCH 方法    459
  19.2.10  集合與名字空間管理    460
  19.2.11  MKCOL 方法 460
  19.2.12  DELETE 方法    461
  19.2.13  COPY 與MOVE 方法    462
  19.2.14  增強的HTTP/1.1 方法    465
  19.2.15  WebDAV 中的版本管理 466
  19.2.16  WebDAV 的未來發展 466
  19.3  更多信息 467
  第20章  重定向與負載均衡    469
  20.1  為什麽要重定向    470
  20.2  重定向到何地    471
  20.3  重定向協議概覽    471
  20.4  通用的重定向方法    474
  20.4.1  HTTP 重定向    474
  20.4.2  DNS 重定向 475
  20.4.3  任播尋址 480
  20.4.4  IP MAC 轉發    481
  20.4.5  IP 地址轉發 482
  20.4.6  網元控制協議 484
  20.5  代理的重定向方法    485
  20.5.1  顯式瀏覽器配置 485
  20.5.2  代理自動配置 485
  20.5.3  Web 代理自動發現協議    487
  20.6  緩存重定向方法    492
  20.7  因特網緩存協議    496
  20.8  緩存陣列路由協議    497
  20.9  超文本緩存協議    500
  20.9.1  HTCP 認證    502
  20.9.2  設置緩存策略 503
  20.10  更多信息    504
  第21章  日誌記錄與使用情況跟蹤    505
  21.1  記錄內容 506
  21.2  日誌格式 507
  21.2.1  常見日誌格式 507
  21.2.2  組合日誌格式 508
  21.2.3  網景擴展日誌格式 509
  21.2.4  網景擴展2 日誌格式 510
  21.2.5  Squid 代理日誌格式    512
  21.3  命中率測量    515
  21.3.1  概述    515
  21.3.2  Meter 首部 516
  21.4  關於隱私的考慮    517
  21.5  更多信息 518
  第六部分  附  錄
  附錄A  URI 方案 521
  附錄B  HTTP 狀態碼    529
  附錄C  HTTP 首部參考    533
  附錄D  MIME 類型    557
  附錄E  Base-64 編碼    603
  附錄F  摘要認證    607
  附錄G  語言標記 615
  附錄H  MIME 字符集註冊表 641

下載地址:網盤下載

《HTTP權威指南》高清中文版pdf