Nginx 支持模块的安装及描述

本贴最后更新于 3441 天前,其中的信息可能已经东海扬尘
摘要
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 日。

    316 引用 • 547 回帖 • 2 关注

相关帖子

欢迎来到这里!

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

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

推荐标签 标签

  • Redis

    Redis 是一个开源的使用 ANSI C 语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value 数据库,并提供多种语言的 API。从 2010 年 3 月 15 日起,Redis 的开发工作由 VMware 主持。从 2013 年 5 月开始,Redis 的开发由 Pivotal 赞助。

    285 引用 • 248 回帖 • 1 关注
  • Vim

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

    29 引用 • 66 回帖
  • 游戏

    沉迷游戏伤身,强撸灰飞烟灭。

    188 引用 • 833 回帖
  • RIP

    愿逝者安息!

    8 引用 • 92 回帖 • 429 关注
  • NGINX

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

    316 引用 • 547 回帖 • 3 关注
  • 小说

    小说是以刻画人物形象为中心,通过完整的故事情节和环境描写来反映社会生活的文学体裁。

    33 引用 • 108 回帖
  • 友情链接

    确认过眼神后的灵魂连接,站在链在!

    25 引用 • 373 回帖 • 4 关注
  • 运维

    互联网运维工作,以服务为中心,以稳定、安全、高效为三个基本点,确保公司的互联网业务能够 7×24 小时为用户提供高质量的服务。

    151 引用 • 257 回帖
  • QQ

    1999 年 2 月腾讯正式推出“腾讯 QQ”,在线用户由 1999 年的 2 人(马化腾和张志东)到现在已经发展到上亿用户了,在线人数超过一亿,是目前使用最广泛的聊天软件之一。

    45 引用 • 557 回帖
  • OpenCV
    15 引用 • 36 回帖 • 1 关注
  • CodeMirror
    2 引用 • 17 回帖 • 197 关注
  • 音乐

    你听到信仰的声音了么?

    63 引用 • 513 回帖
  • ReactiveX

    ReactiveX 是一个专注于异步编程与控制可观察数据(或者事件)流的 API。它组合了观察者模式,迭代器模式和函数式编程的优秀思想。

    1 引用 • 2 回帖 • 193 关注
  • 倾城之链
    23 引用 • 66 回帖 • 187 关注
  • Sandbox

    如果帖子标签含有 Sandbox ,则该帖子会被视为“测试帖”,主要用于测试社区功能,排查 bug 等,该标签下内容不定期进行清理。

    466 引用 • 1241 回帖 • 610 关注
  • Google

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

    51 引用 • 200 回帖 • 1 关注
  • 微服务

    微服务架构是一种架构模式,它提倡将单一应用划分成一组小的服务。服务之间互相协调,互相配合,为用户提供最终价值。每个服务运行在独立的进程中。服务于服务之间才用轻量级的通信机制互相沟通。每个服务都围绕着具体业务构建,能够被独立的部署。

    97 引用 • 155 回帖
  • Kotlin

    Kotlin 是一种在 Java 虚拟机上运行的静态类型编程语言,由 JetBrains 设计开发并开源。Kotlin 可以编译成 Java 字节码,也可以编译成 JavaScript,方便在没有 JVM 的设备上运行。在 Google I/O 2017 中,Google 宣布 Kotlin 成为 Android 官方开发语言。

    19 引用 • 33 回帖 • 86 关注
  • flomo

    flomo 是新一代 「卡片笔记」 ,专注在碎片化时代,促进你的记录,帮你积累更多知识资产。

    6 引用 • 144 回帖 • 3 关注
  • 又拍云

    又拍云是国内领先的 CDN 服务提供商,国家工信部认证通过的“可信云”,乌云众测平台认证的“安全云”,为移动时代的创业者提供新一代的 CDN 加速服务。

    20 引用 • 37 回帖 • 576 关注
  • Anytype
    3 引用 • 31 回帖 • 60 关注
  • Oracle

    Oracle(甲骨文)公司,全称甲骨文股份有限公司(甲骨文软件系统有限公司),是全球最大的企业级软件公司,总部位于美国加利福尼亚州的红木滩。1989 年正式进入中国市场。2013 年,甲骨文已超越 IBM,成为继 Microsoft 后全球第二大软件公司。

    107 引用 • 127 回帖 • 328 关注
  • Rust

    Rust 是一门赋予每个人构建可靠且高效软件能力的语言。Rust 由 Mozilla 开发,最早发布于 2014 年 9 月。

    60 引用 • 22 回帖
  • 阿里云

    阿里云是阿里巴巴集团旗下公司,是全球领先的云计算及人工智能科技公司。提供云服务器、云数据库、云安全等云计算服务,以及大数据、人工智能服务、精准定制基于场景的行业解决方案。

    85 引用 • 324 回帖
  • Ruby

    Ruby 是一种开源的面向对象程序设计的服务器端脚本语言,在 20 世纪 90 年代中期由日本的松本行弘(まつもとゆきひろ/Yukihiro Matsumoto)设计并开发。在 Ruby 社区,松本也被称为马茨(Matz)。

    7 引用 • 31 回帖 • 298 关注
  • JSON

    JSON (JavaScript Object Notation)是一种轻量级的数据交换格式。易于人类阅读和编写。同时也易于机器解析和生成。

    54 引用 • 190 回帖
  • 设计模式

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

    201 引用 • 120 回帖