简介

Nginx (engine x) 是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务和通用TCP / UDP代理服务器;
Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(IMAP/POP3)代理服务器和通用TCP / UDP代理服务器;

功能

基本的HTTP服务器功能

  • 提供静态和索引文件,自动索引 ;
  • 带有缓存的加速反向代理; 负载平衡和容错 ;
  • 对FastCGI, uwsgi, SCGI和 memcached 服务器进行缓存的加速支持 ; 负载平衡和容错 ;
  • 模块化架构。过滤器包括 gzipping,字节范围,分块响应, XSLT, SSI和图像转换过滤器。如果由代理服务器或FastCGI / uwsgi / SCGI服务器处理单个页面中的多个SSI包含,则可以并行处理;
  • SSL和TLS SNI支持;
  • 通过加权和基于依赖项的优先级 支持HTTP 2.0。

其他HTTP服务器功能

  • 基于名称和基于IP的虚拟服务器;
  • 管道连接支持;
  • 访问日志格式, 缓冲日志写入, 快速日志循环和 syslog日志 ;
  • 3xx-5xx错误代码重定向;
  • 重写模块:使用正则表达式更改URI;
  • 根据客户地址执行不同的功能 ;
  • 基于客户端IP地址,密码(HTTP基本身份验证)和子请求结果的访问控制 ;
  • FLV 和 MP4 流媒体;
  • 响应率限制 ;
  • 限制来自一个地址的同时连接或请求的数量 ;
  • 基于IP的地理位置;
  • 拆分测试 ;
  • 请求镜像 ;
  • 嵌入式Perl ;
  • njs脚本语言。

邮件代理服务器功能

  • 使用外部HTTP 身份验证 服务器 将用户重定向到 IMAP 或 POP3服务器
  • 使用外部HTTP 身份验证 服务器的用户身份 验证以及到内部SMTP服务器的连接重定向 ;
  • 认证方式:
    • POP3:USER / PASS,APOP,AUTH LOGIN / PLAIN / CRAM-MD5;
    • IMAP:登录,授权登录/普通/ CRAM-MD5;
    • SMTP:AUTH LOGIN / PLAIN / CRAM-MD5;
  • SSL支持;
  • STARTTLS和STLS支持。

TCP / UDP代理服务器功能

  • TCP和UDP的通用代理;
  • SSL和TLS SNI对TCP的支持;
  • 负载平衡和容错 ;
  • 基于客户地址的访问控制 ;
  • 根据客户地址执行不同的功能 ;
  • 限制 来自一个地址的同时连接数 ;
  • 访问日志格式, 缓冲日志写入, 快速日志循环和 syslog日志 ;
  • 基于IP的地理位置;
  • 拆分测试 ;
  • njs脚本语言。

架构和可扩展性

  • 一个主进程和多个子进程;工作进程可以再任何用户下运行;
  • 灵活的配置 ;
  • 重新配置 和升级可执行文件,而不会中断客户端服务;
  • 支持 kqueue(FreeBSD 4.1 +),epoll(Linux 2.6 +),/ dev / poll(Solaris 7 11/99 +),事件端口(Solaris 10),选择和轮询;
  • 支持各种队列功能,包括EV_CLEAR,EV_DISABLE(用于临时禁用事件),NOTE_LOWAT,EV_EOF,可用数据数,错误代码;
  • 支持各种epoll功能,包括EPOLLRDHUP(Linux 2.6.17 +,glibc 2.8+)和EPOLLEXCLUSIVE(Linux 4.5 +,glibc 2.24+);
  • sendfile(FreeBSD 3.1 +,Linux 2.2 +,macOS 10.5 +),sendfile64(Linux 2.4.21+)和sendfilev(Solaris 8 7/01 +)支持;
  • 文件AIO (FreeBSD 4.3+,Linux 2.6.22+);
  • DIRECTIO (FreeBSD 4.4 +,Linux 2.4 +,Solaris 2.6 +,macOS);
  • 接受过滤器(FreeBSD 4.1+,NetBSD 5.0+)和TCP_DEFER_ACCEPT(Linux 2.4+) 支持 ;
  • 10,000个不活动的HTTP保持活动连接大约需要2.5M内存;
  • 数据复制操作保持最少。

适用平台

  • FreeBSD 3 — 12 / i386; FreeBSD 5 — 12 / amd64; FreeBSD 11 / ppc;
  • FreeBSD 12 / ppc64;
  • Linux 2.2-4 / i386;Linux 2.6-5 / amd64; Linux 3-4 / armv6l,armv7l,aarch64,ppc64le;
  • Solaris 9 / i386,sun4u; Solaris 10 / i386,amd64,sun4v; Solaris 11 / x86;
  • AIX 7.1 / PowerPC;
  • HP-UX 11.31 / ia64;
  • macOS / ppc,i386,x86_64;
  • Windows XP,Windows Server 2003,Windows 7,Windows 10。

带你了解nginx功能的更多相关文章

  1. Nginx功能展示实验

    Nginx功能展示实验 Nging可以作为反代服务器:也可以作为负载均衡器,并自带根据对后端服务器健康状态检测具有增删服务器的功能:也可以作为纯Web服务器,提供Web服务. 本实验将使用Nginx实 ...

  2. VS2013自带的Browser Link功能引发浏览localhost网站时不停的轮询

    浏览localhost网站时候不管你打开那个页面它都会不停的轮询.据悉这是VS2013自带的Browser Link功能,里面用到SignalR机制 什么是Browser Link功能,什么是Sign ...

  3. Nginx功能介绍

    Nginx是lgor Sysoev为俄罗斯访问量第二的rambler.ru站点设计开发的. 从2004年发布至今,凭借开元的力量,已经接近成熟与完善. Nginx功能丰富,可作为HTTP服务器,也可作 ...

  4. Apache 后台服务器(主要处理php及一些功能请求 如:中文url)   Nginx 前端服务器(利用它占用系统资源少得优势来处理静态页面大量请求)   Lighttpd 图片服务器   总体来说,随着nginx功能得完善将使他成为今后web server得主流。

    Apache 后台服务器(主要处理php及一些功能请求 如:中文url) Nginx 前端服务器(利用它占用系统资源少得优势来处理静态页面大量请求) Lighttpd 图片服务器 总体来说,随着ngi ...

  5. Nginx功能模块汇总

    主要文档 Nginx功能概述.为什么选择Nginx.Nginx安装.常见问题(FAQ).配置符号参考.调试 nginx.优化 Nginx.运行和控制Nginx 核心模块 Nginx事件模块.Nginx ...

  6. 使用VS中自带的一键打包功能将我们的ASP.NET Core类库打包并将程序包(类库)发布到NuGet平台上进行管理

    本章将和大家简单分享下如何使用VS中自带的一键打包功能将我们的ASP.NET Core类库打包并将程序包(类库)发布到NuGet平台上进行管理. 一.注册并登录NuGet平台 NuGet官网:http ...

  7. 痞子衡嵌入式:一次利用IAR自带CRC完整性校验功能的实践(为KBOOT加BCA)

    大家好,我是痞子衡,是正经搞技术的痞子.今天痞子衡给大家分享的是利用IAR自带CRC完整性校验功能的一次实践(为KBOOT加BCA). 痞子衡之前写过两篇关于IAR中自带CRC校验功能的文章 < ...

  8. Nginx 功能

      本文只针对Nginx在不加载第三方模块的情况能处理哪些事情,由于第三方模块太多所以也介绍不完,当然本文本身也可能介绍的不完整,毕竟只是我个人使用过和了解到过得,欢迎留言交流. Nginx能做什么 ...

  9. nginx功能扩展整理

    0.基本负载均衡配置 编辑/etc/nginx/nginx.conf,加入负载平衡配置: http { upstream tomcat { server localhost:8080; server ...

  10. Jmeter4.X - 使用本身自带的脚本录制功能录制脚本

    1.前言 记录对Jmeter评估研究的过程,本文记录使用apache网站提供的原Jmeter使用自带功能进行脚本录制. 本文可用于面向B/S WEB应用测试的工程师熟悉Jmeter使用.章节安排按照脚 ...

随机推荐

  1. 所在单位近日购入Dell poweredge T640型号服务器,安装Ubuntu18.04.5 server操作系统,服务器万兆网卡,网线连接到千兆交换机上,不能识别网卡——解决方案

    如题目所说: 所在单位近日购入Dell poweredge T640型号服务器,安装Ubuntu18.04.5 server操作系统,服务器万兆网卡,网线连接到千兆交换机上,不能识别网卡. 服务器  ...

  2. GAN总结

    GAN总结 本篇文章主要是根据GitHub上的GAN代码库[PyTorch-GAN]进行GAN的复习和回顾,对于之前GAN的各种结构的一种简要的概括. Code 关于评价GAN模型的标准 Incept ...

  3. 神经网络之卷积篇:详解三维卷积(Convolutions over volumes)

    详解三维卷积 从一个例子开始,假如说不仅想检测灰度图像的特征,也想检测RGB彩色图像的特征.彩色图像如果是6×6×3,这里的3指的是三个颜色通道,可以把它想象成三个6×6图像的堆叠.为了检测图像的边缘 ...

  4. 一文讲清楚static关键字

    static能修饰的地方 静态变量 静态变量: 又称为类变量,也就是说这个变量属于类的,类所有的实例都共享静态变量,可以直接通过类名来访问它:静态变量在内存中只存在一份. 实例变量: 每创建一个实例就 ...

  5. Ubuntu 笔记本设置合盖不息屏

    编辑 logind.conf 文件 你可以通过编辑 /etc/systemd/logind.conf 文件来控制盖子关闭时的行为: 找到以下几行(如果不存在,可以手动添加): #HandleLidSw ...

  6. (零) React Native 项目开发拾遗

    一位离职的前端同事,最近接了个 React Native 的活儿,遇到许多搞不定的问题,于是找到我帮忙"补课"(没有系统的学习 React Native,也不具备原生 Androi ...

  7. Redis 入门 - 简介

    Redis是Remote Dictionary Server的缩写,可以翻译成远程字典服务.Redis是用C语言编写的开源项目. Redis 最主要的特点就是高性能,对于简单的键值读取速度可以达到10 ...

  8. SimMTM: 用于掩码时间序列建模的简单预训练框架《SimMTM: A Simple Pre-Training Framework for Masked Time-Series Modeling》(预训练模型、时序表征学习、掩码建模、流行学习、近邻聚合、低级表示学习(掩码)、高级表示学习(对比)、segment-wise 和point- wise)

    今天是2024年7月3日10:15,写一篇1月7日就看过的论文,哈哈哈哈哈哈哈哈哈,突然想到这篇论文了. 论文:SimMTM: A Simple Pre-Training Framework for ...

  9. ASP.NET Core – HttpClient

    前言 以前写过的文章 Asp.net core 学习笔记 ( HttpClient ). 其实 HttpClient 内容是挺多的, 但是我自己用到的很少. 所以这篇记入一下自己用到的就好了. 参考 ...

  10. 【linux】【docker】Docker默认网段配置导致无法访问

    背景 集团有N个基地,所有基地的网络使用的是172.x.x.x网段,这本身没有什么问题!但Docker默认的桥接网段也是172.17.x.x的,如果不修改docker的默认配置会导致个别基地无法访问! ...