編輯推薦
Nginx是一個高性能的HTTP服務器和郵件代理,它隻需要使用很少的係統資源就能工作。雖然Web上有很多關於如何使用Nginx的指南和配置示例,但是,要正確地配置Nginx以滿足需要並不容易。
本書指導你掌握Nginx的配置,幫助你學會如何在各種使用場閤正確地調校Nginx,如何使用那些比較難的指令的配置,以及如何設計一個好的配置以滿足你的需要。本書首先介紹瞭Nginx的安裝以及與第三方模塊的整閤,然後介紹瞭Nginx的郵件代理模塊及其認證,zui後介紹瞭如何將Nginx和應用程序整閤起來以加速開發並提高性能。
本書適閤在安裝和配置服務器方麵有經驗的係統管理員或係統工程師閱讀。
你將從本書中學到
● 編譯適當的第三方模塊以滿足你的需要;
● 編寫認證服務器以便使用郵件代理模塊;
● 創建你自己的SSL證書加密連接;
● 使用try_files解決文件存在性檢測;
● 使用緩存和壓縮提高用戶交互;
● 使用FastCGI模塊集成流行的PHP框架;
● 構建有用的日誌配置;
● 排除配置問題。
內容簡介
Nginx是一個高性能的輕量級Web服務器,本書從配置文件的角度齣發,介紹瞭多種關於Nginx配置的技巧。
本書以模塊化風格寫成,幾乎每一章都是一個獨立的模塊,讀者將能夠自由地在各個模塊間切換閱讀。全書分兩部分,第1部分用9章內容介紹瞭安裝Nginx及第三方模塊、配置嚮導、使用mail模塊、Nginx作為反嚮代理、Nginx Http服務器、Nginx的開發、在Nginx中集成Lua以及故障排除技巧;第二部分用4個附錄的形式介紹瞭指令參考、Rewrite規則指南、Nginx社區以及Solaris係統下的網絡調優。
本書適閤在安裝和配置服務器方麵有經驗的係統管理員或係統工程師,閱讀本書不需要任何Nginx使用經驗,相信這本書會幫助讀者更好地完成任務。
作者簡介
本書在國外眾多的Nginx圖書中,以其簡潔實用得到瞭讀者和專傢的認可。國內有Nginx圖書作者和專傢專門嚮我們推薦本書,並自願承擔翻譯工作。
本書第1版在我社齣版後,較短時間內重印,總印數4000冊
目錄
目錄
第1章 安裝Nginx及第三方模塊 1
1.1 使用包管理器安裝Nginx 2
1.1.1 在Centos上安裝Nginx 2
1.1.2 在Debian上安裝Nginx 3
1.2 從源代碼安裝Nginx 3
1.2.1 準備編譯環境 3
1.2.2 從源代碼編譯 4
1.2.3 為Web或者Mail服務器
配置Nginx 5
1.2.4 郵件代理的配置選項 6
1.2.5 指定路徑的配置選項 6
1.3 配置SSL支持 7
1.4 使用各種模塊 7
禁用不再使用的模塊 9
1.5 查找並安裝第三方模塊 10
1.6 添加對Lua的支持 11
1.7 組閤在一起 11
1.8 小結 13
第2章 配置指南 14
2.1 基本配置格式 14
2.2 Nginx全局配置參數 15
2.3 使用include文件 16
2.4 HTTP的server部分 17
2.4.1 客戶端指令 17
2.4.2 文件I/O指令 18
2.4.3 Hash指令 19
2.4.4 Socket指令 19
2.4.5 示例配置文件 20
2.5 虛擬服務器部分 20
2.6 Locations—where,when,how 24
2.7 完整的示例配置文件 26
2.8 小結 27
第3章 使用mail模塊 29
3.1 基本代理服務 29
3.1.1 mail的server配置部分 30
3.1.2 POP3服務 32
3.1.3 IMAP服務 33
3.1.4 SMTP服務 33
3.1.5 使用SSL/TLS 34
3.1.6 完整的mail示例 37
3.2 認證服務 38
3.3 與memcached結閤 46
3.4 解釋日誌文件 48
3.5 操作係統限製 50
3.6 小結 51
第4章 Nginx作為反嚮代理 52
4.1 反嚮代理簡介 53
4.2 代理模塊 54
4.3 帶有cookie的遺留應用程序 57
4.4 upstream模塊 58
4.5 保持活動連接 59
4.6 上遊服務器的類型 61
4.7 單個上遊服務器 61
4.8 多個上遊服務器 62
4.9 非HTTP型上遊服務器 63
4.9.1 Memcached上遊服務器 63
4.9.2 FastCGI上遊服務器 64
4.9.3 SCGI上遊服務器 65
4.9.4 uWSGI上遊服務器 65
4.10 負載均衡 65
負載均衡算法 65
4.11 將if配置轉換為一個更現代的
解釋 66
4.12 使用錯誤文件處理上遊服務器
問題 70
4.13 確定客戶端真實的IP地址 72
4.14 小結 72
第5章 反嚮代理高級話題 73
5.1 安全隔離 74
5.1.1 使用SSL對流量進行加密 74
5.1.2 使用SSL進行客戶端身份
驗證 76
5.1.3 基於原始IP地址阻止流量 78
5.2 孤立應用程序組件的擴展 80
5.3 反嚮代理服務器的性能調優 83
5.3.1 緩衝數據 84
5.3.2 緩存數據 86
5.3.3 存儲數據 90
5.3.4 壓縮數據 91
5.4 小結 94
第6章 Nginx HTTP服務器 95
6.1 Nginx的係統架構 95
6.2 HTTP核心模塊 96
6.2.1 server指令 97
6.2.2 Nginx中的日誌 98
6.2.3 查找文件 101
6.2.4 域名解析 103
6.2.5 客戶端交互 104
6.3 使用limit指令防止濫用 106
6.4 約束訪問 110
6.5 流媒體文件 114
6.6 預定義變量 115
6.7 SPDY和HTTP/2 117
6.8 使用Nginx和PHP-FPM 118
6.9 一個Drupal的配置示例 121
6.9 將Nginx和uWSGI結閤 129
一個Django的配置示例 129
6.10 小結 131
第7章 Nginx的開發 133
7.1 集成緩存 133
7.1.1 應用程序沒有緩存 134
7.1.2 使用數據庫緩存 135
7.1.3 使用文件係統做緩存 138
7.2 動態修改內容 141
7.2.1 使用addition模塊 141
7.2.2 sub模塊 142
7.2.3 xslt模塊 143
7.3 使用服務器端包含SSI(Server
Side Include) 144
7.4 Nginx中的決策 146
7.5 創建安全鏈接 150
7.6 生成圖像 152
7.7 跟蹤網站訪問者 155
7.8 防止意外代碼執行 156
7.9 小結 157
第8章 在Nginx中集成Lua 159
8.1 ngx_lua模塊 159
8.2 集成Lua 160
8.3 使用Lua記錄日誌 163
8.4 小結 163
第9章 故障排除技巧 164
9.1 分析日誌文件 164
9.1.1 錯誤日誌文件格式 164
9.1.2 錯誤日誌文件條目實例 166
9.2 配置高級日誌記錄 168
9.2.1 調試日誌記錄 169
9.2.2 在運行時切換二進製運行
文件 169
9.2.3 使用訪問日誌文件進行
調試 175
9.3 常見的配置錯誤 177
9.3.1 使用if取代try_files 178
9.3.2 使用if作為主機名切換 179
9.3.3 不使用server部分的配置追求
更好的效果 180
9.4 操作係統限製 181
9.4.1 文件描述符限製 181
9.4.2 網絡限製 183
9.5 性能問題 184
9.6 使用Stub Status模塊 186
9.7 小結 187
附錄A 指令參考 189
附錄B Rewrite規則指南 224
附錄C Nginx社區 236
附錄D Solaris係統下的網絡調優 239
精通Nginx(第2版) 下載 mobi epub pdf txt 電子書