Nginx 支持模块的安装及描述

本贴最后更新于 3197 天前,其中的信息可能已经东海扬尘
摘要
Nginx包含如此多的功能模块怎么能不让人心动呢,模块越多一般说明Nginx涵盖的功能也就也全面。Nginx的模块可以描述为:核心、标准、可选、邮件和第三方的模块。有时,为了实现功能的最优化,我们会选择开启或禁用部分Nginx的功能,这里也提供了开启和禁用Nginx相关模块的方法和命令。如果要学会Nginx的模块应用那么就需要了解这些模块究竟是何作用,这样才能有的放矢。

安装模块

Nginx 模块必须在编译时就进行选择,目前不支持在运行时进行模块选择。

在编译时,可以通过命令 ./configure --help 运行所提供的配置脚本来查看所有支持的编译选项列表(包含可选模块)。

 

Nginx 核心模块

这些模块是必须的。

名称说明
Main 配置错误日志、进程、权限等。
Events 配置epoll、kqueue、select、poll等。

标准 HTTP 模块

这些模块是默认均被编译进去的,除非通过configure明确地禁用它们。

名称说明版本禁用选项
Core 控制端口、location、错误页、别名和其他必要配置。   --without-http
Access 基于客户端IP地址允许/拒绝Http请求。   --without-http_access_module
Auth Basic Basic HTTP 认证。   --without-http_auth_basic_module
Auto Index 自动为没有索引页面的目录生成文件列表。   --without-http_autoindex_module
Browser 翻译"User-Agent" 字符串。 0.4.3 --without-http_browser_module
Charset 对Web页面重新编码。   --without-http_charset_module
Empty GIF 在内存中生成一个高1像素、宽1像素的GIF图片,并对外提供服务。 0.3.10 --without-http_empty_gif_module
FastCGI 提供对FastCGI的支持。   --without-http_fastcgi_module
Geo 通过IP地址的键值对来设置配置参数。 0.1.17 --without-http_geo_module
Gzip 支持使用Gzip压缩响应内容。   --without-http_gzip_module
Headers 可以设定任意的HTTP响应头。    
Index 控制将哪些文件作为索引页面。    
Limit Requests 限定客户端创建连接的频率。 0.7.20 --without-http_limit_req_module
Limit Zone 限定客户端同时建立连接的最大数。从1.1.8起不再推荐使用,建议使用 Limit Conn。 0.5.6 --without-http_limit_zone_module
Limit Conn 通过配置参数限定客户端的最大并发连接数。   --without-http_limit_conn_module
Log 可以定制访问日志。    
Map 以键值对的方式设定任意配置参数。 0.3.16 --without-http_map_module
Memcached 支持Memcached。   --without-http_memcached_module
Proxy 代理上级服务器。   --without-http_proxy_module
Referer 基于RefererHTTP请求头对请求进行过滤。   --without-http_referer_module
Rewrite 使用正则表达式对请求进行重写。   --without-http_rewrite_module
SCGI 支持SCGI协议。 0.8.42 --without-http_scgi_module
Split Clients 基于某些条件将客户端分类。 0.8.37 --without-http_split_clients_module
SSI 支持服务器端的include。   --without-http_ssi_module
Upstream 支持负载均衡。   --without-http_upstream_ip_hash_module (ip_hash directive only)
User ID 发行用户身份标识cookie。   --without-http_userid_module
uWSGI 支持uWSGI协议。 0.8.40 --without-http_uwsgi_module
X-Accel 类X-Sendfile模块。    

可选 HTTP 模块

下面的模块必须在编译时为 configure 明确地设定相应的启用选项。

名称说明版本启用选项
Addition 可以为页面追加文本。   --with-http_addition_module
Degradation 允许当剩余内存较低时对某些位置的请求返回 204 或 404 状态码。 0.8.25 --with-http_degradation_module
Embedded Perl 允许在配置文件中使用 Perl。 0.3.21 --with-http_perl_module
FLV 支持 Flash视频(Flash Streaming Video)。 0.4.7 --with-http_flv_module
GeoIP 根据来自 MaxMind 的 GeoIP 二进制文件中的信息创建变量。 0.8.6, 0.7.63 --with-http_geoip_module
Google Perftools 支持 Google 性能工具。 0.6.29 --with-google_perftools_module
Gzip Precompression 提供预压缩的静态文件。 0.6.23 --with-http_gzip_static_module
Image Filter 支持使用 Libgd 对图片进行变换。 0.7.54 --with-http_image_filter_module
MP4 允许对 mp4 流进行寻址。 1.1.3, 1.0.7 --with-http_mp4_module
Random Index 允许使目录索引随机化。 0.7.15 --with-http_random_index_module
Real IP 允许将 nginx 作为后端服务器。 0.3.8 --with-http_realip_module
Secure Link 允许通过密钥保护指定的文件。 0.7.18 --with-http_secure_link_module
SSL 支持 HTTPS/SSL。   --with-http_ssl_module
Stub Status 提供查看服务器统计信息的能力。 0.1.18 --with-http_stub_status_module
Substitution 可以替换页面中的文本。   --with-http_sub_module
WebDAV 支持 WebDAV 穿透。 0.3.38 --with-http_dav_module
XSLT 允许对页面使用 XSLT 进行后处理。 0.7.8 --with-http_xslt_module

邮件模块

名称说明配置参数
Core 使 Nginx 能够处理/代理 IMAP、POP3、SMTP协议。 --with-mail
--without-mail_pop3_module
--without-mail_imap_module
--without-mail_smtp_module
Auth 使用 Nginx 为邮件服务进行认证。  
Proxy 使 Nginx 能够代理 IMAP、POP3、SMTP协议。  
SSL 该模块可以让 POP3/IMAP/SMTP 使用 SSL/TLS。 --with-mail_ssl_module

第三方模块和补丁

请参考目录第三方模块

参考

From:http://wiki.nginx.org/ModulesChs

原文地址:http://wiki.nginx.org/ModulesChs
摘要
Nginx包含如此多的功能模块怎么能不让人心动呢,模块越多一般说明Nginx涵盖的功能也就也全面。Nginx的模块可以描述为:核心、标准、可选、邮件和第三方的模块。有时,为了实现功能的最优化,我们会选择开启或禁用部分Nginx的功能,这里也提供了开启和禁用Nginx相关模块的方法和命令。如果要学会Nginx的模块应用那么就需要了解这些模块究竟是何作用,这样才能有的放矢。

安装模块

Nginx 模块必须在编译时就进行选择,目前不支持在运行时进行模块选择。

在编译时,可以通过命令 ./configure --help 运行所提供的配置脚本来查看所有支持的编译选项列表(包含可选模块)。

 

Nginx 核心模块

这些模块是必须的。

名称说明
Main 配置错误日志、进程、权限等。
Events 配置epoll、kqueue、select、poll等。

标准 HTTP 模块

这些模块是默认均被编译进去的,除非通过configure明确地禁用它们。

名称说明版本禁用选项
Core 控制端口、location、错误页、别名和其他必要配置。   --without-http
Access 基于客户端IP地址允许/拒绝Http请求。   --without-http_access_module
Auth Basic Basic HTTP 认证。   --without-http_auth_basic_module
Auto Index 自动为没有索引页面的目录生成文件列表。   --without-http_autoindex_module
Browser 翻译"User-Agent" 字符串。 0.4.3 --without-http_browser_module
Charset 对Web页面重新编码。   --without-http_charset_module
Empty GIF 在内存中生成一个高1像素、宽1像素的GIF图片,并对外提供服务。 0.3.10 --without-http_empty_gif_module
FastCGI 提供对FastCGI的支持。   --without-http_fastcgi_module
Geo 通过IP地址的键值对来设置配置参数。 0.1.17 --without-http_geo_module
Gzip 支持使用Gzip压缩响应内容。   --without-http_gzip_module
Headers 可以设定任意的HTTP响应头。    
Index 控制将哪些文件作为索引页面。    
Limit Requests 限定客户端创建连接的频率。 0.7.20 --without-http_limit_req_module
Limit Zone 限定客户端同时建立连接的最大数。从1.1.8起不再推荐使用,建议使用 Limit Conn。 0.5.6 --without-http_limit_zone_module
Limit Conn 通过配置参数限定客户端的最大并发连接数。   --without-http_limit_conn_module
Log 可以定制访问日志。    
Map 以键值对的方式设定任意配置参数。 0.3.16 --without-http_map_module
Memcached 支持Memcached。   --without-http_memcached_module
Proxy 代理上级服务器。   --without-http_proxy_module
Referer 基于RefererHTTP请求头对请求进行过滤。   --without-http_referer_module
Rewrite 使用正则表达式对请求进行重写。   --without-http_rewrite_module
SCGI 支持SCGI协议。 0.8.42 --without-http_scgi_module
Split Clients 基于某些条件将客户端分类。 0.8.37 --without-http_split_clients_module
SSI 支持服务器端的include。   --without-http_ssi_module
Upstream 支持负载均衡。   --without-http_upstream_ip_hash_module (ip_hash directive only)
User ID 发行用户身份标识cookie。   --without-http_userid_module
uWSGI 支持uWSGI协议。 0.8.40 --without-http_uwsgi_module
X-Accel 类X-Sendfile模块。    

可选 HTTP 模块

下面的模块必须在编译时为 configure 明确地设定相应的启用选项。

名称说明版本启用选项
Addition 可以为页面追加文本。   --with-http_addition_module
Degradation 允许当剩余内存较低时对某些位置的请求返回 204 或 404 状态码。 0.8.25 --with-http_degradation_module
Embedded Perl 允许在配置文件中使用 Perl。 0.3.21 --with-http_perl_module
FLV 支持 Flash视频(Flash Streaming Video)。 0.4.7 --with-http_flv_module
GeoIP 根据来自 MaxMind 的 GeoIP 二进制文件中的信息创建变量。 0.8.6, 0.7.63 --with-http_geoip_module
Google Perftools 支持 Google 性能工具。 0.6.29 --with-google_perftools_module
Gzip Precompression 提供预压缩的静态文件。 0.6.23 --with-http_gzip_static_module
Image Filter 支持使用 Libgd 对图片进行变换。 0.7.54 --with-http_image_filter_module
MP4 允许对 mp4 流进行寻址。 1.1.3, 1.0.7 --with-http_mp4_module
Random Index 允许使目录索引随机化。 0.7.15 --with-http_random_index_module
Real IP 允许将 nginx 作为后端服务器。 0.3.8 --with-http_realip_module
Secure Link 允许通过密钥保护指定的文件。 0.7.18 --with-http_secure_link_module
SSL 支持 HTTPS/SSL。   --with-http_ssl_module
Stub Status 提供查看服务器统计信息的能力。 0.1.18 --with-http_stub_status_module
Substitution 可以替换页面中的文本。   --with-http_sub_module
WebDAV 支持 WebDAV 穿透。 0.3.38 --with-http_dav_module
XSLT 允许对页面使用 XSLT 进行后处理。 0.7.8 --with-http_xslt_module

邮件模块

名称说明配置参数
Core 使 Nginx 能够处理/代理 IMAP、POP3、SMTP协议。 --with-mail
--without-mail_pop3_module
--without-mail_imap_module
--without-mail_smtp_module
Auth 使用 Nginx 为邮件服务进行认证。  
Proxy 使 Nginx 能够代理 IMAP、POP3、SMTP协议。  
SSL 该模块可以让 POP3/IMAP/SMTP 使用 SSL/TLS。 --with-mail_ssl_module

第三方模块和补丁

请参考目录第三方模块

参考

From:http://wiki.nginx.org/ModulesChs

原文地址:http://wiki.nginx.org/ModulesChs
  • NGINX

    NGINX 是一个高性能的 HTTP 和反向代理服务器,也是一个 IMAP/POP3/SMTP 代理服务器。 NGINX 是由 Igor Sysoev 为俄罗斯访问量第二的 Rambler.ru 站点开发的,第一个公开版本 0.1.0 发布于 2004 年 10 月 4 日。

    315 引用 • 547 回帖 • 1 关注

相关帖子

欢迎来到这里!

我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。

注册 关于
请输入回帖内容 ...

推荐标签 标签

  • 创业

    你比 99% 的人都优秀么?

    82 引用 • 1395 回帖
  • Word
    13 引用 • 40 回帖
  • SQLite

    SQLite 是一个进程内的库,实现了自给自足的、无服务器的、零配置的、事务性的 SQL 数据库引擎。SQLite 是全世界使用最为广泛的数据库引擎。

    5 引用 • 7 回帖
  • 酷鸟浏览器

    安全 · 稳定 · 快速
    为跨境从业人员提供专业的跨境浏览器

    3 引用 • 59 回帖 • 45 关注
  • PHP

    PHP(Hypertext Preprocessor)是一种开源脚本语言。语法吸收了 C 语言、 Java 和 Perl 的特点,主要适用于 Web 开发领域,据说是世界上最好的编程语言。

    180 引用 • 408 回帖 • 489 关注
  • 单点登录

    单点登录(Single Sign On)是目前比较流行的企业业务整合的解决方案之一。SSO 的定义是在多个应用系统中,用户只需要登录一次就可以访问所有相互信任的应用系统。

    9 引用 • 25 回帖 • 3 关注
  • 负能量

    上帝为你关上了一扇门,然后就去睡觉了....努力不一定能成功,但不努力一定很轻松 (° ー °〃)

    89 引用 • 1243 回帖 • 411 关注
  • Vim

    Vim 是类 UNIX 系统文本编辑器 Vi 的加强版本,加入了更多特性来帮助编辑源代码。Vim 的部分增强功能包括文件比较(vimdiff)、语法高亮、全面的帮助系统、本地脚本(Vimscript)和便于选择的可视化模式。

    29 引用 • 66 回帖
  • Mac

    Mac 是苹果公司自 1984 年起以“Macintosh”开始开发的个人消费型计算机,如:iMac、Mac mini、Macbook Air、Macbook Pro、Macbook、Mac Pro 等计算机。

    168 引用 • 597 回帖
  • DevOps

    DevOps(Development 和 Operations 的组合词)是一组过程、方法与系统的统称,用于促进开发(应用程序/软件工程)、技术运营和质量保障(QA)部门之间的沟通、协作与整合。

    57 引用 • 25 回帖
  • 工具

    子曰:“工欲善其事,必先利其器。”

    298 引用 • 763 回帖
  • Unity

    Unity 是由 Unity Technologies 开发的一个让开发者可以轻松创建诸如 2D、3D 多平台的综合型游戏开发工具,是一个全面整合的专业游戏引擎。

    25 引用 • 7 回帖 • 131 关注
  • WebSocket

    WebSocket 是 HTML5 中定义的一种新协议,它实现了浏览器与服务器之间的全双工通信(full-duplex)。

    48 引用 • 206 回帖 • 295 关注
  • 分享

    有什么新发现就分享给大家吧!

    248 引用 • 1794 回帖 • 3 关注
  • 安装

    你若安好,便是晴天。

    132 引用 • 1184 回帖
  • 设计模式

    设计模式(Design pattern)代表了最佳的实践,通常被有经验的面向对象的软件开发人员所采用。设计模式是软件开发人员在软件开发过程中面临的一般问题的解决方案。这些解决方案是众多软件开发人员经过相当长的一段时间的试验和错误总结出来的。

    200 引用 • 120 回帖 • 3 关注
  • 深度学习

    深度学习(Deep Learning)是机器学习的分支,是一种试图使用包含复杂结构或由多重非线性变换构成的多个处理层对数据进行高层抽象的算法。

    54 引用 • 41 回帖
  • SpaceVim

    SpaceVim 是一个社区驱动的模块化 vim/neovim 配置集合,以模块的方式组织管理插件以
    及相关配置,为不同的语言开发量身定制了相关的开发模块,该模块提供代码自动补全,
    语法检查、格式化、调试、REPL 等特性。用户仅需载入相关语言的模块即可得到一个开箱
    即用的 Vim-IDE。

    3 引用 • 31 回帖 • 121 关注
  • CAP

    CAP 指的是在一个分布式系统中, Consistency(一致性)、 Availability(可用性)、Partition tolerance(分区容错性),三者不可兼得。

    12 引用 • 5 回帖 • 637 关注
  • Netty

    Netty 是一个基于 NIO 的客户端-服务器编程框架,使用 Netty 可以让你快速、简单地开发出一个可维护、高性能的网络应用,例如实现了某种协议的客户、服务端应用。

    49 引用 • 33 回帖 • 35 关注
  • ActiveMQ

    ActiveMQ 是 Apache 旗下的一款开源消息总线系统,它完整实现了 JMS 规范,是一个企业级的消息中间件。

    19 引用 • 13 回帖 • 678 关注
  • Google

    Google(Google Inc.,NASDAQ:GOOG)是一家美国上市公司(公有股份公司),于 1998 年 9 月 7 日以私有股份公司的形式创立,设计并管理一个互联网搜索引擎。Google 公司的总部称作“Googleplex”,它位于加利福尼亚山景城。Google 目前被公认为是全球规模最大的搜索引擎,它提供了简单易用的免费服务。不作恶(Don't be evil)是谷歌公司的一项非正式的公司口号。

    49 引用 • 192 回帖
  • Node.js

    Node.js 是一个基于 Chrome JavaScript 运行时建立的平台, 用于方便地搭建响应速度快、易于扩展的网络应用。Node.js 使用事件驱动, 非阻塞 I/O 模型而得以轻量和高效。

    139 引用 • 269 回帖 • 1 关注
  • Postman

    Postman 是一款简单好用的 HTTP API 调试工具。

    4 引用 • 3 回帖 • 2 关注
  • 强迫症

    强迫症(OCD)属于焦虑障碍的一种类型,是一组以强迫思维和强迫行为为主要临床表现的神经精神疾病,其特点为有意识的强迫和反强迫并存,一些毫无意义、甚至违背自己意愿的想法或冲动反反复复侵入患者的日常生活。

    15 引用 • 161 回帖
  • 禅道

    禅道是一款国产的开源项目管理软件,她的核心管理思想基于敏捷方法 scrum,内置了产品管理和项目管理,同时又根据国内研发现状补充了测试管理、计划管理、发布管理、文档管理、事务管理等功能,在一个软件中就可以将软件研发中的需求、任务、bug、用例、计划、发布等要素有序的跟踪管理起来,完整地覆盖了项目管理的核心流程。

    6 引用 • 15 回帖 • 24 关注
  • Java

    Java 是一种可以撰写跨平台应用软件的面向对象的程序设计语言,是由 Sun Microsystems 公司于 1995 年 5 月推出的。Java 技术具有卓越的通用性、高效性、平台移植性和安全性。

    3198 引用 • 8215 回帖 • 1 关注