第1章  Nginx初探 1
         1.1  Nginx的曆史 1
         1.2  常見服務器産品介紹 2
         1.2.1  Apache服務器 2
         1.2.2  Microsoft IIS 3
         1.2.3  Tomcat服務器 3
         1.2.4  Lighttpd服務器 4
         1.2.5  Nginx誕生記 4
         1.2.6  版本變更大事記 5
         1.3  Nginx的功能特性 5
         1.3.1  基本HTTP服務 6
         1.3.2  高級HTTP服務 6
         1.3.3  郵件代理服務 7
         1.4  常用功能介紹 7
         1.4.1  HTTP代理和反嚮代理 7
         1.4.2  負載均衡 7
         1.4.3  Web緩存 8
         1.5  本章小結 9
         第2章  Nginx服務器的安裝部署 10
         2.1  如何獲取Nginx服務器安裝文件 10
         2.1.1  獲取新版本的Nginx服務器 11
         2.1.2  獲取Nginx服務器的曆史版本 11
         2.2  安裝Nginx服務器和基本配置 12
         2.2.1  Windows版本的安裝 12
         2.2.2  Linux版本的編譯和安裝:準備工作 13
         2.2.3  Linux版本的編譯和安裝:Nginx軟件的自動腳本 14
         2.2.4  Linux版本的編譯和安裝:Nginx源代碼的編譯和安裝 18
         2.3  Nginx服務的啓停控製 21
         2.3.1  Nginx服務的信號控製 21
         2.3.2  Nginx服務的啓動 22
         2.3.3  Nginx服務的停止 23
         2.3.4  Nginx服務的重啓 23
         2.3.5  Nginx服務器的升級 24
         2.4  Nginx服務器基礎配置指令 24
         2.4.1  nginx.conf文件的結構 25
         2.4.2  配置運行Nginx服務器用戶(組) 28
         2.4.3  配置允許生成的worker process數 28
         2.4.4  配置Nginx進程PID存放路徑 29
         2.4.5  配置錯誤日誌的存放路徑 29
         2.4.6  配置文件的引入 30
         2.4.7  設置網絡連接的序列化 30
         2.4.8  設置是否允許同時接收多個網絡連接 30
         2.4.9  事件驅動模型的選擇 30
         2.4.10 配置最大連接數 31
         2.4.11 定義MIME-Type 31
         2.4.12 自定義服務日誌 32
         2.4.13 配置允許sendfile方式傳輸文件 33
         2.4.14 配置連接超時時間 33
         2.4.15 單連接請求數上限 34
         2.4.16 配置網絡監聽 34
         2.4.17 基於名稱的虛擬主機配置 35
         2.4.18 基於IP的虛擬主機配置 36
         2.4.19 配置location塊 38
         2.4.20 配置請求的根目錄 39
         2.4.21 更改location的URI 39
         2.4.22 設置網站的默認首頁 40
         2.4.23 設置網站的錯誤頁麵 40
         2.4.24 基於IP配置Nginx的訪問權限 42
         2.4.25 基於密碼配置Nginx的訪問權限 43
         2.5  Nginx服務器基礎配置實例 43
         2.5.1  測試myServer1的訪問 46
         2.5.2  測試myServer2的訪問 46
         2.6  本章小結 47
         第3章  Nginx服務器架構初探 48
         3.1  模塊化結構 48
         3.1.1  什麼是“模塊化設計” 48
         3.1.2  Nginx模塊化結構 49
         3.2  Nginx服務器的Web請求處理機製 54
         3.2.1  多進程方式 54
         3.2.2  多綫程方式 55
         3.2.3  異步方式 55
         3.2.4  Nginx服務器如何處理請求 56
         3.2.5  Nginx服務器的事件處理機製 57
         3.3  Nginx服務器的事件驅動模型 57
         3.3.1  事件驅動模型概述 57
         3.3.2  Nginx中的事件驅動模型 58
         3.3.3  select庫 59
         3.3.4  poll庫 59
         3.3.5  epoll庫 60
         3.3.6  rtsig模型 60
         3.3.7  其他事件驅動模型 61
         3.4  設計架構概覽 61
         3.4.1  Nginx服務器架構 62
         3.4.2  Nginx服務器的進程 63
         3.4.3  進程交互 64
         3.4.4  Run Loops事件處理循環模型 64
         3.5  本章小結 65
         第4章  Nginx服務器的高級配置 67
         4.1  針對IPv4的內核7個參數的配置優化 67
         4.2  針對CPU的Nginx配置優化的2個指令 68
         4.3  與網絡連接相關的配置的4個指令 70
         4.4  與事件驅動模型相關的配置的8個指令 71
         4.5  本章小結 73
         第5章  Nginx服務器的Gzip壓縮 74
         5.1  由ngx_http_gzip_module模塊處理的9個指令 74
         5.2  由ngx_http_gzip_static_module模塊處理的指令 78
         5.3  由ngx_http_gunzip_module模塊處理的2個指令 79
         5.4  Gzip壓縮功能的使用 80
         5.4.1  Gzip壓縮功能綜閤配置實例 80
         5.4.2  Gzip壓縮功能與IE6瀏覽器運行腳本的兼容問題 82
         5.4.3  Nginx與其他服務器交互時産生的Gzip壓縮功能相關問題 83
         5.5  本章小結 84
         第6章  Nginx服務器的Rewrite功能 85
         6.1  Nginx後端服務器組的配置的5個指令 85
         6.2  Rewrite功能的配置 88
         6.2.1  “地址重寫”與“地址轉發” 88
         6.2.2  Rewrite規則 89
         6.2.3  if指令 89
         6.2.4  break指令 91
         6.2.5  rewrite指令 92
         6.2.6  rewrite_log指令 94
         6.2.7  set指令 94
         6.2.8  uninitialized_variable_warn指令 94
         6.2.9  Rewrite常用全局變量 94
         6.3  Rewrite的使用 95
         6.3.1  域名跳轉 95
         6.3.2  域名鏡像 96
         6.3.3  獨立域名 97
         6.3.4  目錄自動添加“/” 98
         6.3.5  目錄閤並 99
         6.3.6  防盜鏈 99
         6.4  本章小結 101
         第7章  Nginx服務器的代理服務 102
         7.1  正嚮代理與反嚮代理的概念 102
         7.2  Nginx服務器的正嚮代理服務 104
         7.2.1  Nginx服務器正嚮代理服務的配置的3個指令 104
         7.2.2  Nginx服務器正嚮代理服務的使用 105
         7.3  Nginx服務器的反嚮代理服務 105
         7.3.1  反嚮代理的基本設置的21個指令 106
         7.3.2  Proxy Buffer的配置的7個指令 113
         7.3.3  Proxy Cache的配置的12個指令 115
         7.4   Nginx服務器的負載均衡 119
         7.4.1  什麼是負載均衡 120
         7.4.2  Nginx服務器負載均衡配置 120
         7.4.3  配置實例一:對所有請求實現一般輪詢規則的負載均衡 120
         7.4.4  配置實例二:對所有請求實現加權輪詢規則的負載均衡 121
         7.4.5  配置實例三:對特定資源實現負載均衡 121
         7.4.6  配置實例四:對不同域名實現負載均衡 122
         7.4.7  配置實例五:實現帶有URL重寫的負載均衡 123
         7.5  本章小結 124
         第8章  Nginx服務器的緩存機製 125
         8.1  Web緩存技術簡述 125
         8.2  404錯誤驅動Web緩存 126
         8.3  資源不存在驅動Web緩存 127
         8.4  基於memcached的緩存機製的6個指令 128
         8.5  Proxy Cache緩存機製 130
         8.6  Nginx與Squid組閤 133
         8.6.1  Squid服務器的配置 133
         8.6.2  Nginx服務器的配置 133
         8.7  基於第三方模塊ncache的緩存機製 134
         8.8  本章小結 134
         第9章  Nginx服務器的郵件服務 135
         9.1  郵件服務 135
         9.2  Nginx郵件服務的配置的12個指令 136
         9.3  Nginx郵件服務配置實例 140
         9.4  本章小結 142
         第10章  Nginx源碼結構 143
         10.1  Nginx源碼的3個目錄結構 143
         10.1.1  core目錄 144
         10.1.2  event目錄 144
         10.1.3  http目錄 145
         10.2  Nginx源碼的模塊化結構 145
         10.2.1  公共功能 145
         10.2.2  配置解析 146
         10.2.3  內存管理 147
         10.2.4  事件驅動 147
         10.2.5  日誌管理 148
         10.2.6  HTTP服務 148
         10.2.7  Mail服務 149
         10.2.8  模塊支持 150
         10.3  本章小結 150
         第11章  Nginx基本數據結構 151
         11.1  ngx_module_s結構體 151
         11.1.1  分類標識ctx_index 152
         11.1.2  模塊計數器index 152
         11.1.3  模塊上下文 153
         11.1.4  迴調函數 153
         11.2  ngx_command_s結構體 154
         11.2.1  type成員 154
         11.2.2  函數指針set 156
         11.2.3  conf和offset 156
         11.3  3個基本模塊的指令集數組結構 157
         11.3.1  http模塊 157
         11.3.2  event模塊 158
         11.3.3  mail模塊 159
         11.4  ngx_ pool_s結構體 160
         11.4.1  ngx_pool_data_t結構體 160
         11.4.2  ngx_pool_large_s結構體 161
         11.4.3  ngx_pool_cleanup_s結構體 161
         11.5  Nginx socket相關的數據結構 161
         11.5.1  ngx_listening_s結構體 161
         11.5.2  ngx_http_conf_port_t結構體 162
         11.5.3  ngx_http_conf_addr_t結構體 163
         11.6  ngx_event_s結構體 163
         11.7  ngx_connection_s結構體 164
         11.8  ngx_cycle_s結構體 166
         11.9  ngx_conf_s結構體 168
         11.9.1  配置上下文*ctx 169
         11.9.2  指令類型type 169
         11.10  ngx_signal_t結構體 170
         11.11  ngx_process_t結構體 172
         11.12  本章小結 172
         第12章  Nginx的啓動初始化 173
         12.1  Nginx啓動過程概覽 173
         12.1.1  程序初始化 173
         12.1.2  啓動多進程 174
         12.2  Nginx的初始化 175
         12.2.1  讀取並處理啓動參數 176
         12.2.2  繼承socket 185
         12.2.3  初始化時間及建立新的cycle結構 187
         12.2.4  建立core模塊上下文結構 188
         12.2.5  解析配置文件 190
         12.2.6  初始化core模塊上下文 196
         12.2.7  創建PID文件 199
         12.2.8  處理監聽socket 199
         12.2.9  信號設置 201
         12.2.10  啓動Master Process 203
         12.2.11  Nginx初始化過程總結 204
         12.3  Nginx的啓動 205
         12.3.1  主進程設置信號阻塞 206
         12.3.2  設置進程標題 206
         12.3.3  啓動工作進程 208
         12.3.4  啓動緩存索引重建及管理進程 211
         12.3.5  循環處理信號 212
         12.3.6  Nginx啓動過程總結 216
         12.4  本章小結 217
         第13章  Nginx的時間管理 218
         13.1  獲取係統時間的一般方法 218
         13.1.1  係統調用的開銷 218
         13.1.2  gettimeofday() 219
         13.2  Nginx時間管理的工作原理 220
         13.2.1  時間緩存的更新 220
         13.2.2  更新時間緩存的時機 224
         13.3  緩存時間的精度 226
         13.3.1  設置緩存時間的精度 226
         13.3.2  緩存時間精度的控製原理 226
         13.4  本章小結 228
         第14章  Nginx的內存管理 229
         14.1  內存池的邏輯結構 229
         14.2  內存池的管理 230
         14.2.1  創建內存池 231
         14.2.2  銷毀內存池 234
         14.2.3  重置內存池 235
         14.3  內存的使用 235
         14.3.1  申請內存 235
         14.3.2  釋放內存 241
         14.3.3  迴收內存 241
         14.4  本章小結 243
         第15章  Nginx工作進程 244
         15.1  工作進程概覽 244
         15.2  相關源碼分析 245
         15.2.1  設置工作進程運行環境 246
         15.2.2  監聽和處理進程控製事件 249
         15.2.3  接收網絡請求事件 250
         15.2.4  執行進程控製 254
         15.3  Nginx服務器進程間通信 256
         15.3.1  Linux進程間通信方式 256
         15.3.2  Linux進程間雙工通信的實現 257
         15.3.3  通信通道的建立和設置 257
         15.3.4  通信通道的使用 259
         15.3.5  消息的讀寫 259
         15.4  本章小結 263
         第16章  Nginx的模塊編程 264
         16.1  模塊的種類 264
         16.2  模塊開發實踐 265
         16.2.1  “Hello_Nginx”模塊編程實例 265
         16.2.2  模塊的結構 268
         16.2.3  模塊命名規則 272
         16.3  模塊的編譯與安裝 272
         16.4  本章小結 274
         第17章  Nginx在動態網站建設中的應用實例 275
         17.1  Nginx在JSP網站建設中的應用 275
         17.1.1  環境描述 275
         17.1.2  特彆模塊說明 276
         17.1.3  配置方案 276
         17.2  Nginx在PHP網站建設中的應用 278
         17.2.1  環境描述 278
         17.2.2  特彆模塊說明 279
         17.2.3  配置方案 280
         17.3  Nginx+Perl腳本在網站建設中的應用 281
         17.3.1  環境描述 282
         17.3.2  特彆模塊說明 282
         17.3.3  配置方案 282
         17.4  本章小結 285
         第18章  Nginx經典應用——LNAMP 286
         18.1  LNAMP概述 286
         18.2  手動部署和配置 287
         18.2.1  環境準備 287
         18.2.2  安裝和配置MySQL 288
         18.2.3  安裝和配置Apache 289
         18.2.4  安裝 PHP 289
         18.3  自動安裝 293
         18.4  本章小結 293
         附錄A  Nginx內置變量 294
         附錄B  正則錶達式語法 296
      · · · · · ·     (
收起)