Nginx官方版是一款可以处理高并发的网络请求的Web服务器。Nginx官方版采用事件驱动的异步架构,可以同时处理数万个并发连接,支持多种协议和数据格式。Nginx官方版还提供了多种模块和插件,可以扩展其功能和性能。此外,软件还具有负载均衡、缓存、SSL加密等功能,可以提高Web应用的性能和安全性。
-
3.4.0 官方版查看
-
3.0.0.1005 中文版查看
-
4.0.0 官方版查看
-
1.4.1 最新版查看
-
0.1.9 官方版查看
Nginx软件简介
Nginx(发音同 engine x)是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器,并在一个BSD-like 协议下发行。由俄罗斯的程序设计师Igor Sysoev所开发,供俄国大型的入口网站及搜索引擎Rambler(俄文:Рамблер)使用。
Nginx软件特色
跨平台:可以在大多数Unix like 系统编译运行。而且也有Windows的移植版本。
配置异常简单:非常的简单,易上手。
非阻塞、高并发连接:数据复制时,磁盘I/O的第一阶段是非阻塞的。官方测试能支持5万并发连接,实际生产中能跑2~3万并发连接数(得益于Nginx采用了最新的epoll事件处理模型(消息队列)。
Nginx代理和后端Web服务器间无需长连接;
Nginx接收用户请求是异步的,即先将用户请求全部接收下来,再一次性发送到后端Web服务器,极大减轻后端Web服务器的压力。
发送响应报文时,是边接收来自后端Web服务器的数据,边发送给客户端。
网络依赖性低,理论上只要能够ping通就可以实施负载均衡,而且可以有效区分内网、外网流量。
支持内置服务器检测。Nginx能够根据应用服务器处理页面返回的状态码、超时信息等检测服务器是否出现故障,并及时返回错误的请求重新提交到其它节点上。
Nginx使用功能
1、基本HTTP功能
(a)提供静态文件和index文件,处理静态文件,索引文件以及自动索引,打开文件描述符缓存;
(b)使用缓存加速反向代理,反向代理加速(无缓存),简单的负载均衡和容错;
(c)使用缓存机制加速远程FastCGI,简单的负载均衡和容错;
(d)模块化的结构。过滤器包括gzipping,byte ranges,chunked responses,以及 SSI-filter。在SSI过滤器中,到同一个 proxy 或者 FastCGI 的多个子请求并发处理;
(e)支持SSL 和 TLS SNI 支持;
(f)IMAP/POP3代理功能;
(g)使用外部 HTTP 认证服务器重定向用户到 IMAP/POP3 后端;
(h)使用外部 HTTP 认证服务器认证用户后连接重定向到内部的 SMTP 后端;
2、其他HTTP功能
(a)基于名称和基于IP的虚拟服务器;
(b)支持Keep-alive和管道连接;
(c)灵活的配置和重新配置、在线升级的时候不用中断客户访问的处理;
(d)访问日志的格式,缓存日志写入和快速日志轮循;
(e)3xx-5xx错误代码重定向;
(f)速度限制。
Nginx使用方法
一、双击nginx.exe图标,可见黑窗口一闪而过,启动完毕。
二、命令行到nginx目录,输入nginx启动。(注,此方式命令行窗口无任何提示,且被锁定)
三、命令行到nginx目录,输入start nginx启动,此方式不锁定
启动后,默认情况下,可见到有两个nginx的进程,1个是master process,1个是worker processes。
如果你在配置中配置2个worker_processes,进程中就可以看到1个是master process,2个是worker processes。
测试
默认nginx部署了些静态内容,我们可通过它测试nginx是否在工作。
默认的配置文件(NGINX_HOME/conf/nginx.conf)如下:
通过观察配置文件的非注释项,大概可知:
① 启动了1个worker processes
② worker_connections,最大并发数为1024
③ include mime.types,引入mime.types文件所声明的文件扩展名与文件类型映射
④ application/octet-stream,默认使用application/octet-stream
⑤ sendfile,开启高效文件传输模式
⑥ 监听本机“localhost”的80端口
⑦ 映射目录为“当前目录的html目录”
⑧ 出现500、502、503、504错误,则映射到50x.html
浏览地址https://localhost,即可访问其默认页面,即映射到NGINX_HOME/html/index.html
其他静态内容,如html、图片,可自行添加测试。
4. 日志
日志默认位于NGINX_HOME/logs/,可见:
1、access.log,访问日志
2、error.log,异常日志
3、nginx.pid,进程(仅在启动nginx后才有此日志)
Nginx更新日志
1.将bug扫地出门进行到底
2.有史以来最稳定版本