阿里P8架构师精心整理的Nginx入门到实战篇,Java开发者福音

前言

Nginx是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务。Nginx是由伊戈尔·赛索耶夫为俄罗斯访问量第二的Rambler.ru站点(俄文:Рамблер)开发的,第一个公开版本0.1.0发布于2004年10月4日。

其将源代码以类BSD许可证的形式发布,因它的稳定性、丰富的功能集、示例配置文件和低系统资源的消耗而闻名。2011年6月1日,nginx 1.0.4发布。

Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,在BSD-like 协议下发行。其特点是占有内存少,并发能力强,事实上nginx的并发能力确实在同类型的网页服务器中表现较好。

Nginx简介

1.1 常用的Web服务器简介

1.1.1 Apache服务器

1.1.2 Lighttpd服务器

1.1.3 Tomcat服务器

1.1.4 IBM WebSphere 服务器

1.1.5 Microsoft IIS

1.2 Nginx发展

1.3 选择Nginx的理由

1.3.1 它可以高并发连接

1.3.2 内存消耗少

1.3.3 成本低廉

1.3.4 其他理由

1.4 Nginx与Apache、Lighttpd的综合对比

阿里P8架构师精心整理的Nginx入门到实战篇,Java开发者福音

Nginx服务器的安装与配置

2.1 安装Nginx服务器所需要的系统资源

2.2 Nginx的下载

2.3 Nginx的安装

2.3.1 Nginx在Windows环境下的安装

2.3.2 Nginx在Linux环境下的安装

2.4 Nginx的启动、停止、平滑重启

2.4.1 Nginx的启动

2.4.2 Nginx的停止

2.5 Nginx的平滑重启

2.6 Nginx的信号控制

2.7 Nginx的平滑升级

阿里P8架构师精心整理的Nginx入门到实战篇,Java开发者福音

Nginx的基本配置与优化

3.1 Nginx的完整配置示例

3.2 Nginx的虚拟主机配置

3.2.1 什么是虚拟机

3.2.2 配置基于IP的虚拟主机

3.2.3 配置基于域名的虚拟机

3.3 Nginx的日志文件配置与切割

3.3.1 用log-format指令设置日志格式

3.3.2 用access-log指令指定日志文件存放路径

3.3.3 Nginx日志文件的切割

3.4 Nginx的压缩输出配置

3.5 Nginx的自动列目录配置

3.6 Nginx的浏览器本地缓存设置

阿里P8架构师精心整理的Nginx入门到实战篇,Java开发者福音

Nginx与PHP(FastCGI)的安装、配置与优化

4.1 获取相关开源程序

4.2 安装PHP5.2.10(FastCGI模式)

4.3 安装Nginx 0.8.15

4.4 配置开机自动启动Nginx+PHP

4.5 优化Linux内核参数

4.6 在不停止Nginx服务的情况下平滑变更Nginx配置

4.7 编写每天定时切割Nginx日志的脚本

阿里P8架构师精心整理的Nginx入门到实战篇,Java开发者福音

Nginx与JSP、ASP.NET、Perl的安装与配置

5.1 Nginx与JSP(Tomcat)在Linux上的安装、配置

5.1.1 Tomcat和JDK安装

5.1.2 Nginx与Tomcat的配置

5.2 Nginx与ASP.NET(Mono+FastCGI)在Linux上的安装、配置

5.2.1 Mono的安装

5.2.2 Nginx与ASP.NET(Mono+FastCGI)的配置

5.3 Nginx与Perl(FastCGI)在Linux上的安装、配置

5.3.1 Perl(FastCGI)的安装

5.3.2 Nginx与Perl(FastCGI)的配置

阿里P8架构师精心整理的Nginx入门到实战篇,Java开发者福音

Nginx HTTP负载均衡和反向代理的配置与优化

6.1 什么是负载均衡和反向代理

6.1.1 负载均衡

6.1.2 反向代理

6.2 常见的Web负载均衡方法

6.2.1 用户手动选择方式

6.2.2 DNS轮询方式

6.2.3 四/七层负载均衡设备

6.2.4 多线多地区智能DNS解析与混合负载均衡方式

6.3 Nginx负载均衡与反向代理的配置实例

6.3.1 完整的Nginx反向代理示例

6.3.2 Nginx负载均衡与反向代理实现动、静态网业分离

6.4 Nginx负载均衡的HTTP Upstream 模块

6.4.1 ip-hash指令

6.4.2 server指令

6.4.3 upstream指令

6.4.4 upstream相关变量

6.5 Nginx负载均衡服务器的双机高可用

阿里P8架构师精心整理的Nginx入门到实战篇,Java开发者福音

Nginx的Rewrite规则与实例

7.1 什么是Nginx的Rewrit规则

7.2 Nginx Rewrite 规则相关指令

7.2.1 break指令

7.2.2 if指令

7.2.3 return指令

7.2.4 rewrite指令

7.2.5 set指令

7.2.6 uninitialized-variable-warn指令

7.2.7 Nginx Rewrite可以用到的全局变量

7.3 PCRE正则表达式语法

7.4 Nginx的Rewrite规则编写实例

7.5 Nginx与Apache的Rewrite规则实例对比

7.5.1 简单的Nginx与Apache Rewritre规则

7.5.2 允许指定的域名访问本站,其他域名一律跳转

7.5.3 URL重写与反向代理同时进行

7.5.4 指定URL之外的URL进行Rewrite跳转

7.5.5 域名前缀作为重写规则变量的示例

阿里P8架构师精心整理的Nginx入门到实战篇,Java开发者福音

Nginx模块开发.

8.1 Nginx模块概述

8.2 Nginx模块编写实践

8.2.1 Hello World模块编写与安装

8.2.2 Hello World模块分析

阿里P8架构师精心整理的Nginx入门到实战篇,Java开发者福音

Nginx的Web缓存服务于新浪网的开源NCACHE模块

9.1 什么是Web缓存

9.2 Nginx的Web缓存服务

9.2.1 proxy-cache相关指令集

9.2.2 proxy-cache完整示例

9.2.3 fastcgi-cache相关指令集

9.2.4 fastcgi-cache完整示例

9.3 新浪网开源软件项目——基于Nginx的NCACHE网页缓存系统

9.3.1 NCACHE模块的安装

9.3.2 NCACHE配置文件编写

9.3.3 NCACHE的管理维护

9.3.4 NCACHE后端内容源服务器设置

阿里P8架构师精心整理的Nginx入门到实战篇,Java开发者福音

Nginx在国内知名网站中的应用案例

10.1 Nginx反向代理与负载均衡类网站应用案例

10.1.1 Nginx负载均衡在新浪播客中的应用

10.1.2 Nginx负载均衡在金山逍遥网中的应用

10.2 Nginx+PHP类网站应用案例

10.2.1 Nginx+PHP在金山逍遥网CMS发布系统中的应用

10.2.2 Nginx+PHP在某分类信息网站中的应用

10.3 Nginx视频点播类网站应用案例

10.3.1 Nginx视频点播在金山游戏视频网站中的应用

阿里P8架构师精心整理的Nginx入门到实战篇,Java开发者福音

Nginx的非典型应用实例

11.1 用HTTPS(SSL)构建一个安全的Nginx Web服务器

11.1.1 自行颁发不受浏览器信任的SSL证书

11.1.2 向CA机构申请颁发受浏览器信任的SSL证书

11.2 采用Nginx搭建FLV视频服务器

11.2.1 采用Nginx的Flv Stream模块搭建HTTP下载方式的FLV视频服务器

11.2.2 采用Nginx实现FMS/Red5流媒体视频服务器的负载均衡

11.3 Nginx+PHP+MySQL在小内存VPS服务器上的优化

11.3.1 增加swap交换文件

11.3.2 Nginx的主配文件(nginx.conf)优化

11.3.3 PHP(FastCGI)的配置优化

11.3.4 MySQL5.1配置优化

11.4 采用Nginx搭建正向代理服务器

阿里P8架构师精心整理的Nginx入门到实战篇,Java开发者福音

Nginx核心模块

12.1 主模块指令

12.1.1 deamon指令

12.1.2 env指令

12.1.3 debug-points指令

12.1.4 error-log指令

12.1.5 log-not-found指令

12.1.6 include指令

12.1.7 lock-file指令

12.1.8 master-process指令

12.1.9 pid指令

12.1.10 ssl-engine指令

12.1.11 timer-resolution指令

12.1.12 try-files指令

12.1.13 user指令

12.1.14 worker-cpu-affinity指令

12.1.15 worker-priority指令

12.1.16 worker-processes

12.1.17 worker-rlimit-core指令

12.1.18 worker-rlimit-nofile指令

12.1.19 worker-rlimit-sigpending指令

12.1.20 working-directory指令

12.2 主模块变量

12.3 事件模块指令

12.3.1 accept-mutex指令

12.3.2 accept-mutex-delay

12.3.3 debug-connection指令

12.3.4 use指令

12.3.5 worker-connection指令

阿里P8架构师精心整理的Nginx入门到实战篇,Java开发者福音

Nginx的标准HTTP模块

13.1 HTTP的核心模块

13.1.1 alias指令

13.1.2 client-body-in-file-only指令

13.1.3 client-body-in-single-buffer指令

13.1.4 client-body-buffer-size指令

13.1.5 client-body-temp-path指令

13.1.6 client-body-timeout 指令

13.1.7 client-header-buffer-size指令

13.1.8 client-header-timeout指令

13.1.9 client-max-body-size指令

13.1.10 default-type指令

13.1.11 directio指令

13.1.12 error-page指令

13.1.13 if-modified-since指令

13.1.14 index指令

13.1.15 internal指令

13.1.16 keepalive-timeout指令

13.1.17 keepalive-requests指令

13.1.18 large-client-herder-buffers指令

13.1.19 limit-except指令

13.1.20 limit-rate指令

13.1.21 limit-rate-after指令

13.1.22 listen指令

13.1.23 location指令

13.1.24 log-not-found指令

13.1.25 log-subrequest指令

13.126 msie-padding指令

13.1.27 msie-refresh指令

13.1.28 open-file-cache指令

阿里P8架构师精心整理的Nginx入门到实战篇,Java开发者福音

阿里P8架构师精心整理的Nginx入门到实战篇,Java开发者福音

Nginx的其他HTTP模块

阿里P8架构师精心整理的Nginx入门到实战篇,Java开发者福音

Nginx的邮件模块

阿里P8架构师精心整理的Nginx入门到实战篇,Java开发者福音

由于分享的文档内容太多,在这里就简单的介绍一下目录,完整版【Nginx实战】VX添加朋友:MXY1692,领取方无任何套路,皆免费分享。

阿里P8架构师精心整理的Nginx入门到实战篇,Java开发者福音

发布了39 篇原创文章 · 获赞 6 · 访问量 1514

猜你喜欢

转载自blog.csdn.net/JavaAOE/article/details/103274311