nginx中文指南,别的不说了,目录沾上来大家看,有用就下吧。
第1 章 Nginx 简介基本介绍
1.1 常用的Web 服务器简介 3
1.1.1 Apache 服务器 3
1.1.2 Lighttpd 服务器 3
1.1.3 Tomcat 服务器 4
1.1.4 IBM WebSphere 服务器 4
1.1.5 Microsoft IIS 4
1.2 Nginx 简介 4
1.3 选择Nginx 的理由 5
1.3.1 它可以高并发连接 5
1.3.2 内存消耗少 7
1.3.3 配置文件非常简单 8
1.3.4 成本低廉 8
1.3.5 支持Rewrite 重写规则 9
1.3.6 内置的健康检查功能 9
1.3.7 节省带宽 9
1.3.8 稳定性高 9
1.3.9 支持热部署 9
1.4 Nginx 与Apache、Lighttpd 的综合对比 9
第2 章 Nginx 服务器的安装与配置 11
2.1 安装Nginx 服务器所需要的系统资源 11
2.2 Nginx 的下载 12
2.3 Nginx 的安装 12
2.3.1 Nginx 在Windows 环境下的安装 13
2.3.2 Nginx 在Linux 环境下的安装 13
2.4 Nginx 的启动、停止、平滑重启 16
2.4.1 Nginx 的启动 17
2.4.2 Nginx 的停止 17
2.5 Nginx 的平滑重启 18
2.6 Nginx 的信号控制 18
2.7 Nginx 的平滑升级 19
第3 章 Nginx 的基本配置与优化 21
3.1 Nginx 的完整配置示例 21
3.2 Nginx 的虚拟主机配置 23
3.2.1 什么是虚拟主机 23
3.2.2 配置基于IP 的虚拟主机 24
3.2.3 配置基于域名的虚拟主机 27
3.3 Nginx 的日志文件配置与切割 29
3.3.1 用log_format 指令设置日志格式 29
3.3.2 用access_log 指令指定日志文件存放路径 30
3.3.3 Nginx 日志文件的切割 32
3.4 Nginx 的压缩输出配置 33
3.5 Nginx 的自动列目录配置 35
3.6 Nginx 的浏览器本地缓存设置 36
第4 章 Nginx 与PHP(FastCGI)的安装、配置与优化 38
4.1 获取相关开源程序 39
4.2 安装PHP 5.2.10(FastCGI 模式) 42
4.3 安装Nginx 0.8.15 52
4.4 配置开机自动启动Nginx + PHP 55
4.5 优化Linux 内核参数 55
4.6 在不停止Nginx 服务的情况下平滑变更Nginx 配置 56
4.7 编写每天定时切割Nginx 日志的脚本 56
第5 章 Nginx 与JSP、ASP.NET、Perl 的安装与配置 59
5.1 Nginx 与JSP(Tomcat)在Linux 上的安装、配置 59
5.2.1 Tomcat 和JDK 的安装 60
5.1.2 Nginx 与Tomcat 的配置 61
5.2 Nginx 与ASP.NET(Mono+FastCGI)在Linux 上的安装、配
置 63
5.2.1 Mono 的安装 63
5.2.2 Nginx 与ASP.NET(Mono+FastCGI)的配置 64
5.3 Nginx 与Perl(FastCGI)在Linux 上的安装、配置 67
5.3.1 Perl(FastCGI)的安装 67
5.3.2 Nginx 与Perl(FastCGI)的配置 70
第6 章 Nginx HTTP 负载均衡和反向代理的配置与优化 73
6.1 什么是负载均衡和反向代理 73
6.1.1 负载均衡 73
6.1.2 反向代理 73
6.2 常见的Web 负载均衡方法 74
6.2.1 用户手动选择方式 74
6.2.2 DNS 轮询方式 75
6.2.3 四/七层负载均衡设备 77
6.2.4 多线多地区智能DNS 解析与混合负载均衡方式 81
6.3 Nginx 负载均衡与反向代理的配置实例 83
6.3.1 完整的Nginx 反向代理示例如代码6-3 所示 83
6.3.2 Nginx 负载均衡与反向代理实现动、静态网页分离 86
6.4 Nginx 负载均衡的HTTP Upstream 模块 88
6.4.1 ip_hash 指令 89
6.4.2 server 指令 89
6.4.3 upstream 指令 90
6.4.4 upstream 相关变量 90
6.5 Nginx 负载均衡服务器的双机高可用 91
第7 章 Nginx 的Rewrite 规则编写实例 99
7.1 什么是Nginx 的Rewrite 规则 99
7.2 Nginx Rewrite 规则相关指令 99
7.2.1 break 指令 100
7.2.2 if 指令 100
7.2.3 return 指令 101
7.2.4 rewrite 指令 104
7.2.5 set 指令 106
7.2.6 uninitialized_variable_warn 指令 106
7.2.7 Nginx Rewrite 可以用到的全局变量 106
7.3 PCRE 正则表达式语法 107
7.4 Nginx 的Rewrite 规则编写实例 109
7.5 Nginx 与Apache 的Rewrite 规则实例对比 112
7.5.1 简单的Nginx 与Apache Rewrite 重写规则 112
7.5.2 允许指定的域名访问本站,其他域名一律跳转到
http://www.aaa.com 113
7.5.3 URL 重写与反向代理同时进行 114
7.5.4 指定URL 之外的URL 进行Rewrite 跳转 114
7.5.5 域名前缀作为重写规则变量的示例 115
第8 章 Nginx 模块开发 117
8.1 Nginx 模块概述 117
8.2 Nginx 模块编写实践 119
8.2.1 Hello World 模块编写与安装 119
8.2.2 Hello World 模块分析 121
第9 章 Nginx 的Web 缓存服务与新浪网的开源NCACHE 模
块 127
9.1 什么是Web 缓存? 127
9.2 Nginx 的Web 缓存服务 128
9.2.1 proxy_cache 相关指令集 128
9.2.2 proxy_cache 完整示例 130
9.2.3 fastcgi_cache 相关指令集 131
9.3 新浪网开源软件项目——基于Nginx 的NCache 网页缓存系
统 135
9.3.1 NCACHE 模块的安装 136
9.3.2 NCACHE 配置文件编写 136
9.3.3 NCACHE 的管理维护 138
9.3.4 NCACHE 后端内容源服务器设置 139
第10 章 Nginx 在国内知名网站中的应用案例 141
10.1 Nginx 反向代理与负载均衡类网站应用案例 142
10.1.1 Nginx 负载均衡在新浪播客中的应用 142
10.1.2 Nginx 负载均衡在金山逍遥网中的应用 146
10.2 Nginx+PHP 类网站应用案例 152
10.2.1 Nginx+PHP 在金山逍遥网CMS 发布系统中的应用 152
10.2.2 Nginx+PHP 在某分类信息网站中的应用 154
第11 章 Nginx 的非典型应用实例 171
11.1 用HTTPS(SSL)构建一个安全的Nginx Web 服务器 171
11.1.1 自行颁发不受浏览器信任的SSL 证书 171
11.1.2 向CA 机构申请颁发受浏览器信任的SSL 证书 174
11.2 采用Nginx 搭建FLV 视频服务器 176
11.2.1 采用Nginx 的Flv Stream 模块搭建HTTP 下载方式的FLV
视频服务器 176
11.2.2 采用Nginx 实现FMS/Red5 流媒体视频服务器的负载均
衡 177
11.3 Nginx+PHP+MySQL 在小内存VPS 服务器上的优化 179
11.3.1 增加swap 交换文件 180
11.3.2 Nginx 的主配置文件(nginx.conf)优化 180
11.3.3 PHP(FastCGI)的配置优化 182
11.3.4 MySQL 5.1 配置优化 182
11.4 采用Nginx 搭建正向代理服务器 184
第12 章 Nginx 的核心模块 185
12.1 主模块指令 185
12.1.1 daemon 指令 185
12.1.2 env 指令 186
12.1.3 debug_points 指令 186
12.1.4 error_log 指令 186
12.1.5 log_not_found 指令 187
12.1.6 include 指令 188
12.1.7 lock_file 指令 188
12.1.8 master_process 指令 188
12.1.9 pid 指令 189
12.1.10 ssl_engine 指令 189
12.1.11 timer_resolution 指令 189
12.1.12 try_files 指令 189
12.1.13 user 指令 191
12.1.14 worker_cpu_affinity 指令 191
12.1.15 worker_priority 指令 192
12.1.16 worker_processes 指令 192
12.1.17 worker_rlimit_core 指令 193
12.1.18 worker_rlimit_nofile 指令 193
12.1.18 worker_rlimit_sigpending 指令 193
12.1.19 working_directory 指令 193
12.2 主模块变量 193
12.3 事件模块指令 194
12.3.1 accept_mutex 指令 194
12.3.2 accept_mutex_delay 指令 194
12.3.3 debug_connection 指令 194
12.3.4 use 指令 195
12.3.5 worker_connections 指令 195
第13 章 Nginx 的标准HTTP 模块 197
13.1 HTTP 的核心模块 197
13.1.1 alias 指令 197
13.1.2 client_body_in_file_only 指令 198
13.1.3 client_body_in_single_buffer 指令 198
13.1.4 client_body_buffer_size 指令 198
13.1.5 client_body_temp_path 指令 198
13.1.6 client_body_timeout 指令 199
13.1.7 client_header_buffer_size 指令 199
13.1.8 client_header_timeout 指令 199
13.1.9 client_max_body_size 指令 199
13.1.10 default_type 指令 200
13.1.11 directio 指令 200
13.1.12 error_page 指令 201
13.1.13 if_modified_since 指令 201
13.1.14 index 指令 202
13.1.14 internal 指令 202
13.1.15 keepalive_timeout 指令 203
13.1.16 keepalive_requests 指令 203
13.1.17 large_client_header_buffers 指令 204
13.1.18 limit_except 指令 204
13.1.19 limit_rate 指令 204
13.1.20 limit_rate_after 指令 205
13.1.21 listen 指令 205
13.1.22 location 指令 206
13.1.24 log_not_found 指令 207
13.1.25 log_subrequest 指令 207
13.1.26 msie_padding 指令 208
13.1.27 msie_refresh 指令 208
13.1.28 open_file_cache 指令 208
13.1.29 open_file_cache_errors 指令 209
13.1.30 open_file_cache_min_uses 指令 209
13.1.31 open_file_cache_valid 指令 209
13.1.32 optimize_server_names 指令 209
13.1.33 port_in_redirect 指令 210
13.1.34 recursive_error_pages 指令 210
13.1.35 resolver 指令 210
13.1.36 resolver_timeout 指令 210
13.1.37 root 指令 211
13.1.38 satisfy_any 指令 211
13.1.39 send_timeout 指令 211
13.1.40 sendfile 指令 211
13.1.41 server 指令 212
13.1.42 server_name 指令 212
13.1.43 server_name_in_redirect 指令 214
13.1.44 server_names_hash_max_size 指令 214
13.1.45 server_names_hash_bucket_size 指令 214
13.1.46 server_tokens 指令 215
13.1.47 tcp_nodelay 指令 215
13.1.48 tcp_nopush 指令 215
13.1.49 try_files 指令 215
13.1.50 types 指令 216
13.1.51 HTTP 核心模块中可以使用的变量 216
13.2 HTTP Upstream 模块 219
13.3 Http Access 模块 219
13.3.1 allow 指令 219
13.3.2 deny 指令 219
13.4 HTTP Auth Basic 模块 220
13.4.1 auth_basic 指令 220
13.4.2 auth_basic_user_file 221
13.5 Http Autoindex 模块 221
13.5.1 autoindex 指令 221
13.5.2 autoindex_exact_size 指令 222
13.5.3 autoindex_localtime 指令 222
13.6 Http Browser 模块 222
13.6.1 ancient_browser 指令 223
13.6.2 ancient_browser_value 指令 223
13.6.3 modern_browser 指令 223
13.6.4 modern_browser_value 指令 225
13.7 Http Charset 模块 226
13.7.1 charset 指令 226
13.7.2 charset_map 指令 226
13.7.3 override_charset 指令 228
13.7.4 source_charset 指令 228
13.8 Http Empty Gif 模块 228
13.8.1 empty_gif 指令 228
13.9 Http Fcgi 模块 228
13.9.1 fastcgi_buffers 指令 229
13.9.2 fastcgi_buffer_size 指令 230
13.9.3 fastcgi_cache 指令 230
13.9.4 fastcgi_cache_key 指令 230
13.9.5 fastcgi_cache_methods 指令 230
13.9.6 fastcgi_index 指令 231
13.9.7 fastcgi_hide_header 指令 231
13.9.8 fastcgi_ignore_client_abort 指令 231
13.9.9 fastcgi_intercept_errors 指令 231
13.9.10 fastcgi_max_temp_file_size 指令 232
13.9.11 fastcgi_param 指令 232
13.9.12 fastcgi_pass 指令 233
13.9.13 fastcgi_pass_header 指令 234
13.9.14 fastcgi_read_timeout 指令 234
13.9.15 fastcgi_redirect_errors 指令 234
13.9.16 fastcgi_split_path_info 指令 234
13.10 Geo 模块 235
13.10.1 geo 指令 236
13.11 Gzip 模块 237
13.11.1 gzip 指令 238
13.11.2 gzip_buffers 指令 238
13.11.3 gzip_comp_level 指令 239
13.11.4 gzip_min_length 指令 239
13.11.5 gzip_http_version 指令 239
13.11.6 gzip_proxied 指令 240
13.11.7 gzip_types 指令 240
13.12 Http Headers 模块 241
13.12.1 add_header 指令 242
13.12.2 expires 指令 242
13.13 Http Index 模块 243
13.13.1 index 指令 243
13.14 Http Referer 模块 243
13.14.1 valid_referers 指令 244
13.15 Http Limit Zone 模块 244
13.15.1 limit_zone 指令 245
13.15.2 limit_conn 指令 245
13.16 Http Limit Req 模块 246
13.16.1 limit_req_zone 指令 246
13.16.2 limit_req 指令 247
13.17 Http Log 模块 248
13.17.1 access_log 指令 248
13.17.2 log_format 指令 249
13.17.3 log_format_combined 指令 249
13.17.4 open_log_file_cache 指令 250
13.18 Http Map 模块 250
13.18.1 map 指令 251
13.18.2 map_hash_max_size 指令 252
13.18.3 map_hash_bucket_size 指令 252
13.19 Http Memcached 模块 252
13.19.1 memcached_pass 指令 254
13.19.2 memcached_connect_timeout 指令 255
13.19.3 memcached_read_timeout 指令 255
13.19.4 memcached_send_timeout 指令 255
13.19.5 memcached_buffer_size 指令 256
13.19.6 memcached_next_upstream 指令 256
13.19.7 Http Memcached 模块中的变量 256
13.19.8 第三方的Memcached 模块 256
13.20 Http Proxy 模块 257
13.20.1 proxy_buffer_size 指令 257
13.20.2 proxy_buffering 指令 257
13.20.3 proxy_buffers 指令 258
13.20.4 proxy_busy_buffers_size 指令 258
13.20.5 proxy_cache 相关指令集 259
13.20.6 proxy_connect_timeout 指令 259
13.20.7 proxy_headers_hash_bucket_size 指令 259
13.20.8 proxy_headers_hash_max_size 指令 259
13.20.9 proxy_hide_header 指令 260
13.20.10 proxy_ignore_client_abort 指令 260
13.20.11 proxy_ignore_headers 指令 260
13.20.12 proxy_intercept_errors 指令 261
13.20.13 proxy_max_temp_file_size 指令 261
13.20.14 proxy_method 指令 261
13.20.15 proxy_next_upstream 指令 262
13.20.16 proxy_pass 指令 263
13.20.17 proxy_pass_header 指令 264
13.20.18 proxy_pass_request_body 指令 265
13.20.19 proxy_pass_request_headers 指令 265
13.20.20 proxy_redirect 指令 265
13.20.21 proxy_read_timeout 指令 266
13.20.22 proxy_redirect_errors 指令 267
13.20.23 proxy_send_lowat 指令 267
13.20.24 proxy_send_timeout 指令 267
13.20.25 proxy_set_body 指令 268
13.20.26 proxy_set_header 指令 268
13.20.27 proxy_store 指令 269
13.20.28 proxy_store_access 指令 270
13.20.29 proxy_temp_file_write_size 指令 271
13.20.30 proxy_temp_path 指令 271
13.20.31 proxy_upstream_fail_timeout 指令 271
13.20.32 proxy_upstream_max_fails 指令 271
13.20.33 Http Proxy 模块的变量 272
13.21 Http Rewrite 模块 272
13.22 Http SSI 模块 272
13.22.1 ssi 指令 273
13.22.2 ssi_silent_errors 指令 273
13.22.3 ssi_types 指令 273
13.22.4 ssi_value_length 指令 274
13.22.5 SSI 命令 274
13.22.6 SSI 变量 276
13.27 Http Userid 模块 277
13.27.1 userid 指令 277
13.27.2 userid_domain 指令 277
13.27.3 userid_expires 指令 278
13.27.4 userid_name 指令 278
13.27.5 userid_p3p 指令 278
13.27.6 userid_path 指令 279
13.27.6 userid_service 指令 279
第14 章 Nginx 的其他HTTP 模块 280
14.1 Http Addition 模块 280
14.1.1 add_before_body 281
14.1.2 add_after_body 281
14.1.3 addition_types 281
14.2 Embedded Perl 模块 281
14.2.1 perl 指令 283
14.2.2 perl_modules 指令 283
14.2.3 perl_require 指令 283
14.2.4 perl_set 指令 283
14.2.5 从SSI 调用Perl 脚本 284
14.3 Flv Stream 模块 286
14.3 flv 指令 287
14.4 Http Gzip Static 模块 287
14.4.1 gzip_static 指令 287
14.4.2 gzip_http_version 指令 287
14.4.3 gzip_proxied 指令 288
14.5 Http Random Index 模块 288
14.5.1 random_index 指令 288
14.6 Http Geo IP 模块 288
14.6.1 geoip_country 指令 289
14.6.2 geoip_city 模块 289
14.7 Http RealIp 模块 290
14.7.1 set_real_ip_from 指令 290
14.7.2 real_ip_header 指令 291
14.8 Http SSL 模块 291
14.8.1 在多个server{……}虚拟主机中使用通配符SSL 证
书 294
14.8.2 ssl 指令 294
14.8.3 ssl_certificate 指令 294
14.8.4 ssl_certificate_key 指令 295
14.8.5 ssl_client_certificate 指令 295
14.8.6 ssl_dhparam 指令 295
14.8.7 ssl_ciphers 指令 295
14.8.8 ssl_crl 指令 296
14.8.9 ssl_prefer_server_ciphers 指令 296
14.8.10 ssl_protocols 指令 296
14.8.11 ssl_verify_client 指令 296
14.8.12 ssl_verify_depth 指令 296
14.8.13 ssl_session_cache 指令 297
14.8.14 ssl_session_timeout 指令 297
14.8.15 ssl_engine 指令 298
14.9 Http Stub Status 模块 298
14.9.1 stub_status 指令 299
14.10 Http Sub 模块 299
14.10.1 sub_filter 指令 300
14.10.2 sub_filter_once 指令 300
14.10.3 sub_filter_types 指令 300
14.11 Http Dav 模块 300
14.11.1 dav_access 指令 301
14.11.2 dav_methods 指令 301
14.11.3 create_full_put_path 指令 301
14.12 Google Perftools 模块 302
14.12.1 google_perftools_profiles 指令 302
14.13 Http XSLT 模块 302
14.13.1 xslt_entities 指令 303
14.13.2 xslt_stylesheet 指令 303
14.13.3 xslt_types 指令 304
14.14 Http Secure Link 模块 304
14.14.1 secure_link_secret 指令 304
14.14.2 $secure_link 变量 305
14.15 Http Image Filter 模块 306
14.15.1 image_filter 306
14.15.2 image_filter_buffer 306
14.15.3 image_filter_jpeg_quality 307
14.15.4 image_filter_transparency 307
第15 章 Nginx 的邮件模块 301
15.1 Nginx 邮件核心模块 303
15.2 Nginx 邮件认证模块 307
15.3 Nginx 邮件代理模块 308
15.4 Nginx 邮件SSL 模块 310
15.5 Nginx 邮件模块配置实例 312
1