nginx是一款HTTP和反向代理服务器,是一款通用的TCP/UDP代理服务器,原作者是Igor Sysoev(伊戈尔·西索夫)。
基本HTTP服务器特性
- 静态服务与索引文件、自动索引;打开的文件描述符缓存;
- 带缓存的加速反向代理;负载均衡与容错;
- 对FastCGI、uwsgi、SCGI和memcached服务的加速带缓存支持;负载均衡与容错;
- 模块化结构。过滤器包括gzipping、byte ranges、chunked responses、XSLT、SSI和图片转换过滤器。
- 支持SSL和TLS SNI (关于SNI参考这里)
- 支持HTTP/2,带有权重的(weighted)和基于依赖的优先级(dependency-based priority)
其它HTTP特性
- 基于域名与IP地址的虚拟服务器
- 支持keep alive与管道连接(pipelined connection)
- 访问日志格式化、缓存了的日志的输出(buffed log writing)、快速的日志翻卷(fast log rotation)、记入系统日志(syslog logging)
- 3xx-5xx 错误代码重定向
- 重写模块,使用正则改变URI
- 根据客户端IP地址执行不同的方法
- 基于客户端IP地址、基于密码和基于子请求结果的访问控制(Access Control)
- HTTP referer 校验
- PUT、DELETE、MLCOL、COPY、MOVE方法
- FLV和MP4流
- 响应速率限制
- 限制并发连接数量或者来自同一个地址的请求数量
- 基于IP的地理定位(geolocation)
- A/B 测试
- 请求镜像
- 嵌入Perl
- nginScript