FAQ

Page Discussion History

Difference between revisions of "Modules"

m (References)
(Auth request module link added.)
(10 intermediate revisions by 2 users not shown)
Line 4: Line 4:
 
A full summary of the compile-time options, including optional modules, can be found in the provided configure script by running <code>./configure --help</code>
 
A full summary of the compile-time options, including optional modules, can be found in the provided configure script by running <code>./configure --help</code>
  
= Nginx core modules =
+
= Nginx core module =
These modules are required.
+
This module is required.
  
 
{| class="modules-index-table"  
 
{| class="modules-index-table"  
 
! Name !! Description
 
! Name !! Description
 
|-
 
|-
| [[CoreModule|Main]]
+
| [http://nginx.org/en/docs/ngx_core_module.html Core]
| Configure error logging, processes, permissions, etc.
+
| Configure error logging, processes, permissions, epoll/kqueue/select/poll events, etc.
|-
+
| [[EventsModule|Events]]
+
| Configure epoll, kqueue, select, poll, etc.  
+
|-
+
 
|}
 
|}
  
Line 27: Line 23:
 
! configure argument to disable
 
! configure argument to disable
 
|-
 
|-
| [[HttpCoreModule|Core]]
+
| [http://nginx.org/en/docs/http/ngx_http_core_module.html HTTP Core]
 
| Control ports, locations, error pages, aliases, and other essentials.
 
| Control ports, locations, error pages, aliases, and other essentials.
 
|
 
|
 
| --without-http
 
| --without-http
 
|-  
 
|-  
| [[HttpAccessModule|Access]]
+
| [http://nginx.org/en/docs/http/ngx_http_access_module.html Access]
 
| Allow/deny based on IP address.
 
| Allow/deny based on IP address.
 
|
 
|
 
| --without-http_access_module
 
| --without-http_access_module
 
|-
 
|-
| [[HttpAuthBasicModule|Auth Basic]]
+
| [http://nginx.org/en/docs/http/ngx_http_auth_basic_module.html Auth Basic]
 
| Basic HTTP authentication.
 
| Basic HTTP authentication.
 
|
 
|
 
| --without-http_auth_basic_module
 
| --without-http_auth_basic_module
 
|-
 
|-
| [[HttpAutoindexModule|Auto Index]]
+
| [http://nginx.org/en/docs/http/ngx_http_autoindex_module.html Auto Index]
 
| Generates automatic directory listings.
 
| Generates automatic directory listings.
 
|
 
|
 
| --without-http_autoindex_module
 
| --without-http_autoindex_module
 
|-
 
|-
| [[HttpBrowserModule|Browser]]
+
| [http://nginx.org/en/docs/http/ngx_http_browser_module.html Browser]
 
| Interpret "User-Agent" string.
 
| Interpret "User-Agent" string.
 
| 0.4.3
 
| 0.4.3
 
| --without-http_browser_module
 
| --without-http_browser_module
 
|-
 
|-
| [[HttpCharsetModule|Charset]]
+
| [http://nginx.org/en/docs/http/ngx_http_charset_module.html Charset]
 
| Recode web pages.
 
| Recode web pages.
 
|
 
|
 
| --without-http_charset_module
 
| --without-http_charset_module
 
|-
 
|-
| [[HttpEmptyGifModule|Empty GIF]]
+
| [http://nginx.org/en/docs/http/ngx_http_empty_gif_module.html Empty GIF]
 
| Serve a 1x1 image from memory.
 
| Serve a 1x1 image from memory.
 
| 0.3.10
 
| 0.3.10
 
| --without-http_empty_gif_module
 
| --without-http_empty_gif_module
 
|-
 
|-
| [[HttpFastcgiModule|FastCGI]]
+
| [http://nginx.org/en/docs/http/ngx_http_fastcgi_module.html FastCGI]
 
| FastCGI Support.
 
| FastCGI Support.
 
|
 
|
 
| --without-http_fastcgi_module
 
| --without-http_fastcgi_module
 
|-
 
|-
| [[HttpGeoModule|Geo]]
+
| [http://nginx.org/en/docs/http/ngx_http_geo_module.html Geo]
 
| Set config variables using key/value pairs of IP addresses.
 
| Set config variables using key/value pairs of IP addresses.
 
| 0.1.17
 
| 0.1.17
 
| --without-http_geo_module
 
| --without-http_geo_module
 
|-
 
|-
| [[HttpGzipModule|Gzip]]
+
| [http://nginx.org/en/docs/http/ngx_http_gzip_module.html Gzip]
 
| Gzip responses.
 
| Gzip responses.
 
|
 
|
 
| --without-http_gzip_module
 
| --without-http_gzip_module
 
|-
 
|-
| [[HttpHeadersModule|Headers]]
+
| [http://nginx.org/en/docs/http/ngx_http_headers_module.html Headers]
 
| Set arbitrary HTTP response headers.  
 
| Set arbitrary HTTP response headers.  
 
|
 
|
 
|-
 
|-
| [[HttpIndexModule|Index]]
+
| [http://nginx.org/en/docs/http/ngx_http_index_module.html Index]
 
| Controls which files are to be used as index.  
 
| Controls which files are to be used as index.  
 
|
 
|
 
|-
 
|-
| [[HttpLimitReqModule|Limit Requests]]
+
| [http://nginx.org/en/docs/http/ngx_http_limit_req_module.html Limit Requests]
 
| Limit frequency of connections from a client.
 
| Limit frequency of connections from a client.
 
| 0.7.20
 
| 0.7.20
 
| --without-http_limit_req_module
 
| --without-http_limit_req_module
 
|-
 
|-
| [[HttpLimitZoneModule|Limit Zone]]
+
| [http://nginx.org/en/docs/http/ngx_http_limit_conn_module.html Limit Conn]
| Limit simultaneous connections from a client. Deprecated in 1.1.8, use Limit Conn Instead.
+
| 0.5.6
+
| --without-http_limit_zone_module
+
|-
+
| [[HttpLimitConnModule|Limit Conn]]
+
 
| Limit concurrent connections based on a variable.
 
| Limit concurrent connections based on a variable.
 
|
 
|
 
| --without-http_limit_conn_module
 
| --without-http_limit_conn_module
 
|-
 
|-
| [[HttpLogModule|Log]]
+
| [http://nginx.org/en/docs/http/ngx_http_log_module.html Log]
 
| Customize access logs.
 
| Customize access logs.
 
|
 
|
 
|-
 
|-
| [[HttpMapModule|Map]]
+
| [http://nginx.org/en/docs/http/ngx_http_map_module.html Map]
 
| Set config variables using arbitrary key/value pairs.
 
| Set config variables using arbitrary key/value pairs.
 
| 0.3.16
 
| 0.3.16
 
| --without-http_map_module
 
| --without-http_map_module
 
|-
 
|-
| [[HttpMemcachedModule|Memcached]]
+
| [http://nginx.org/en/docs/http/ngx_http_memcached_module.html Memcached]
 
| Memcached support.
 
| Memcached support.
 
|
 
|
 
| --without-http_memcached_module
 
| --without-http_memcached_module
 
|-
 
|-
| [[HttpProxyModule|Proxy]]
+
| [http://nginx.org/en/docs/http/ngx_http_proxy_module.html Proxy]
 
| Proxy to upstream servers.
 
| Proxy to upstream servers.
 
|
 
|
 
| --without-http_proxy_module
 
| --without-http_proxy_module
 
|-
 
|-
| [[HttpRefererModule|Referer]]
+
| [http://nginx.org/en/docs/http/ngx_http_referer_module.html Referer]
 
| Filter requests based on <code>Referer</code> header.
 
| Filter requests based on <code>Referer</code> header.
 
|
 
|
 
| --without-http_referer_module
 
| --without-http_referer_module
 
|-
 
|-
| [[HttpRewriteModule|Rewrite]]
+
| [http://nginx.org/en/docs/http/ngx_http_rewrite_module.html Rewrite]
 
| Request rewriting using regular expressions.
 
| Request rewriting using regular expressions.
 
|
 
|
Line 134: Line 125:
 
| --without-http_scgi_module
 
| --without-http_scgi_module
 
|-
 
|-
| [[HttpSplitClientsModule|Split Clients]]
+
| [http://nginx.org/en/docs/http/ngx_http_split_clients_module.html Split Clients]
 
| Splits clients based on some conditions
 
| Splits clients based on some conditions
 
| 0.8.37
 
| 0.8.37
 
| --without-http_split_clients_module
 
| --without-http_split_clients_module
 
|-
 
|-
| [[HttpSsiModule|SSI]]
+
| [http://nginx.org/en/docs/http/ngx_http_ssi_module.html SSI]
 
| Server-side includes.
 
| Server-side includes.
 
|
 
|
 
| --without-http_ssi_module
 
| --without-http_ssi_module
 
|-
 
|-
| [[HttpUpstreamModule|Upstream]]
+
| [http://nginx.org/en/docs/http/ngx_http_upstream_module.html Upstream]
 
| For load-balancing.
 
| For load-balancing.
 
|
 
|
 
| --without-http_upstream_ip_hash_module (ip_hash directive only)
 
| --without-http_upstream_ip_hash_module (ip_hash directive only)
 
|-
 
|-
| [[HttpUseridModule|User ID]]
+
| [http://nginx.org/en/docs/http/ngx_http_userid_module.html User ID]
 
| Issue identifying cookies.
 
| Issue identifying cookies.
 
|
 
|
Line 174: Line 165:
 
! configure argument to enable
 
! configure argument to enable
 
|-
 
|-
| [[HttpAdditionModule|Addition]]
+
| [http://nginx.org/en/docs/http/ngx_http_addition_module.html Addition]
 
| Append text to pages.
 
| Append text to pages.
 
|  
 
|  
 
| --with-http_addition_module
 
| --with-http_addition_module
 +
|-
 +
|[http://nginx.org/en/docs/http/ngx_http_auth_request_module.html Auth Request]
 +
| Implements client authorization based on the result of a subrequest.
 +
| 1.5.4
 +
| --with-http_auth_request_module
 
|-
 
|-
 
| [[HttpDegradationModule|Degradation]]
 
| [[HttpDegradationModule|Degradation]]
Line 184: Line 180:
 
| --with-http_degradation_module
 
| --with-http_degradation_module
 
|-
 
|-
| [[HttpPerlModule|Embedded Perl]]
+
| [http://nginx.org/en/docs/http/ngx_http_perl_module.html Embedded Perl]
 
| Use Perl in Nginx config files.
 
| Use Perl in Nginx config files.
 
| 0.3.21
 
| 0.3.21
 
| --with-http_perl_module
 
| --with-http_perl_module
 
|-
 
|-
| [[HttpFlvModule|FLV]]
+
| [http://nginx.org/en/docs/http/ngx_http_flv_module.html FLV]
 
| Flash Streaming Video
 
| Flash Streaming Video
 
| 0.4.7
 
| 0.4.7
 
| --with-http_flv_module
 
| --with-http_flv_module
 
|-
 
|-
| [[HttpGeoipModule|GeoIP]]
+
| [http://nginx.org/en/docs/http/ngx_http_geoip_module.html GeoIP]
 
| Creates variables with information from the [http://www.maxmind.com/ MaxMind] GeoIP binary files.
 
| Creates variables with information from the [http://www.maxmind.com/ MaxMind] GeoIP binary files.
 
| 0.8.6, 0.7.63
 
| 0.8.6, 0.7.63
Line 204: Line 200:
 
| --with-google_perftools_module
 
| --with-google_perftools_module
 
|-
 
|-
| [[HttpGzipStaticModule|Gzip Precompression]]
+
| [http://nginx.org/en/docs/http/ngx_http_gzip_static_module.html Gzip Precompression]
 
| Serves precompressed versions of static files.
 
| Serves precompressed versions of static files.
 
| 0.6.23
 
| 0.6.23
 
| --with-http_gzip_static_module
 
| --with-http_gzip_static_module
 
|-
 
|-
| [[HttpImageFilterModule|Image Filter]]
+
| [http://nginx.org/en/docs/http/ngx_http_gunzip_module.html Gunzip]
 +
| On-the-fly decompressing of gzipped responses.
 +
| 1.3.6
 +
| --with-http_gunzip_module
 +
|-
 +
| [http://nginx.org/en/docs/http/ngx_http_image_filter_module.html Image Filter]
 
| Transform images with Libgd
 
| Transform images with Libgd
 
| 0.7.54
 
| 0.7.54
 
| --with-http_image_filter_module
 
| --with-http_image_filter_module
 
|-
 
|-
| [[HttpMp4Module|MP4]]
+
| [http://nginx.org/en/docs/http/ngx_http_mp4_module.html MP4]
 
| Enables mp4 streaming with seeking ability.
 
| Enables mp4 streaming with seeking ability.
 
| 1.1.3, 1.0.7
 
| 1.1.3, 1.0.7
 
| --with-http_mp4_module
 
| --with-http_mp4_module
 
|-
 
|-
| [[HttpRandomIndexModule|Random Index]]
+
| [http://nginx.org/en/docs/http/ngx_http_random_index_module.html Random Index]
 
| Randomize directory indexes.
 
| Randomize directory indexes.
 
| 0.7.15
 
| 0.7.15
 
| --with-http_random_index_module
 
| --with-http_random_index_module
 
|-
 
|-
| [[HttpRealipModule|Real IP]]
+
| [http://nginx.org/en/docs/http/ngx_http_realip_module.html Real IP]
 
| For using nginx as backend
 
| For using nginx as backend
 
| 0.3.8
 
| 0.3.8
 
| --with-http_realip_module
 
| --with-http_realip_module
 
|-
 
|-
| [[HttpSecureLinkModule|Secure Link]]
+
| [http://nginx.org/en/docs/http/ngx_http_secure_link_module.html Secure Link]
 
| Protect pages with a secret key.
 
| Protect pages with a secret key.
 
| 0.7.18
 
| 0.7.18
 
| --with-http_secure_link_module
 
| --with-http_secure_link_module
 
|-
 
|-
| [[HttpSslModule|SSL]]
+
| [http://nginx.org/en/docs/http/ngx_http_ssl_module.html SSL]
 
| HTTPS/SSL support.
 
| HTTPS/SSL support.
 
|  
 
|  
Line 244: Line 245:
 
| --with-http_stub_status_module
 
| --with-http_stub_status_module
 
|-
 
|-
| [[HttpSubModule|Substitution]]
+
| [http://nginx.org/en/docs/http/ngx_http_sub_module.html Substitution]
 
| Replace text in pages
 
| Replace text in pages
 
|  
 
|  
 
| --with-http_sub_module
 
| --with-http_sub_module
 
|-
 
|-
| [[HttpDavModule|WebDAV]]
+
| [http://nginx.org/en/docs/http/ngx_http_dav_module.html WebDAV]
 
| WebDAV pass-through support.
 
| WebDAV pass-through support.
 
| 0.3.38
 
| 0.3.38
 
| --with-http_dav_module
 
| --with-http_dav_module
 
|-
 
|-
| [[HttpXsltModule|XSLT]]
+
| [http://nginx.org/en/docs/http/ngx_http_xslt_module.html XSLT]
 
| Post-process pages with XSLT.
 
| Post-process pages with XSLT.
 
| 0.7.8
 
| 0.7.8
Line 266: Line 267:
 
! configure argument
 
! configure argument
 
|-
 
|-
| [[MailCoreModule|Core]]
+
| [http://nginx.org/en/docs/mail/ngx_mail_core_module.html Mail Core]
| Nginx is able to handle and proxy the IMAP, POP3, SMTP protocols.  
+
| Core parameters for mail module.
| --with-mail<br>--without-mail_pop3_module<br>--without-mail_imap_module<br>--without-mail_smtp_module
+
| --with-mail
 
|-
 
|-
| [[MailAuthModule|Auth]]
+
| [http://nginx.org/en/docs/mail/ngx_mail_pop3_module.html POP3]
 +
| POP3 settings.
 +
| --without-mail_pop3_module
 +
|-
 +
| [http://nginx.org/en/docs/mail/ngx_mail_imap_module.html IMAP]
 +
| IMAP settings.
 +
| --without-mail_imap_module
 +
|-
 +
| [http://nginx.org/en/docs/mail/ngx_mail_smtp_module.html SMTP]
 +
| SMTP settings.
 +
| --without-mail_smtp_module
 +
|-
 +
| [http://nginx.org/en/docs/mail/ngx_mail_auth_http_module.html Auth HTTP]
 
| Use Nginx to authenticate mail services.
 
| Use Nginx to authenticate mail services.
 
|-
 
|-
| [[MailProxyModule|Proxy]]
+
| [http://nginx.org/en/docs/mail/ngx_mail_proxy_module.html Proxy]
 
| Nginx can proxy IMAP, POP3, and SMTP protocols.
 
| Nginx can proxy IMAP, POP3, and SMTP protocols.
 
|-
 
|-
| [[MailSslModule|SSL]]
+
| [http://nginx.org/en/docs/mail/ngx_mail_ssl_module.html SSL]
 
| This module ensures SSL/TLS support for POP3/IMAP/SMTP.
 
| This module ensures SSL/TLS support for POP3/IMAP/SMTP.
 
| --with-mail_ssl_module
 
| --with-mail_ssl_module
 
|}
 
|}
 +
 +
= Obsoleted articles =
 +
 +
Most of the links above points to official up-to-date documentation provided by Nginx, Inc.
 +
For historical reasons there is a [[Obsoleted_Articles|list of obsoleted wiki articles]].
 +
 +
'''WARNING: these articles may contain outdated, incomplete or even incorrect information.'''
 +
 +
Please always refer to the official documentation avaiable at http://nginx.org.
  
 
= Third party modules and Patches =
 
= Third party modules and Patches =
Line 290: Line 312:
 
* [http://trac.nginx.org/nginx Feature Requests and bug reports]  
 
* [http://trac.nginx.org/nginx Feature Requests and bug reports]  
 
* [[GettingStarted| Getting Started]]  
 
* [[GettingStarted| Getting Started]]  
* [http://oakhamschoolofmotoring.co.uk/ driving schools mansfield]
 
 
* [[Configuration| Configuration Cookbook]]
 
* [[Configuration| Configuration Cookbook]]
* [[DirectiveIndex| Index of all Directives]]
+
* [http://nginx.org/en/docs/dirindex.html Index of all Directives]

Revision as of 14:53, 22 August 2013

Contents

Installing Modules

Nginx modules must be selected during compile, run-time selection of modules is not currently supported.

A full summary of the compile-time options, including optional modules, can be found in the provided configure script by running ./configure --help

Nginx core module

This module is required.

Name Description
Core Configure error logging, processes, permissions, epoll/kqueue/select/poll events, etc.

Standard HTTP modules

These modules are automatically compiled in unless explicitly disabled with configure.

Name Description Version configure argument to disable
HTTP Core Control ports, locations, error pages, aliases, and other essentials. --without-http
Access Allow/deny based on IP address. --without-http_access_module
Auth Basic Basic HTTP authentication. --without-http_auth_basic_module
Auto Index Generates automatic directory listings. --without-http_autoindex_module
Browser Interpret "User-Agent" string. 0.4.3 --without-http_browser_module
Charset Recode web pages. --without-http_charset_module
Empty GIF Serve a 1x1 image from memory. 0.3.10 --without-http_empty_gif_module
FastCGI FastCGI Support. --without-http_fastcgi_module
Geo Set config variables using key/value pairs of IP addresses. 0.1.17 --without-http_geo_module
Gzip Gzip responses. --without-http_gzip_module
Headers Set arbitrary HTTP response headers.
Index Controls which files are to be used as index.
Limit Requests Limit frequency of connections from a client. 0.7.20 --without-http_limit_req_module
Limit Conn Limit concurrent connections based on a variable. --without-http_limit_conn_module
Log Customize access logs.
Map Set config variables using arbitrary key/value pairs. 0.3.16 --without-http_map_module
Memcached Memcached support. --without-http_memcached_module
Proxy Proxy to upstream servers. --without-http_proxy_module
Referer Filter requests based on Referer header. --without-http_referer_module
Rewrite Request rewriting using regular expressions. --without-http_rewrite_module
SCGI SCGI protocol support. 0.8.42 --without-http_scgi_module
Split Clients Splits clients based on some conditions 0.8.37 --without-http_split_clients_module
SSI Server-side includes. --without-http_ssi_module
Upstream For load-balancing. --without-http_upstream_ip_hash_module (ip_hash directive only)
User ID Issue identifying cookies. --without-http_userid_module
uWSGI uWSGI protocol support. 0.8.40 --without-http_uwsgi_module
X-Accel X-Sendfile-like module.

Optional HTTP modules

The following modules must be enabled at compile-time with the specified option to configure.

Name Description Version configure argument to enable
Addition Append text to pages. --with-http_addition_module
Auth Request Implements client authorization based on the result of a subrequest. 1.5.4 --with-http_auth_request_module
Degradation Allow to return 204 or 444 code for some locations on low memory condition. 0.8.25 --with-http_degradation_module
Embedded Perl Use Perl in Nginx config files. 0.3.21 --with-http_perl_module
FLV Flash Streaming Video 0.4.7 --with-http_flv_module
GeoIP Creates variables with information from the MaxMind GeoIP binary files. 0.8.6, 0.7.63 --with-http_geoip_module
Google Perftools Google Performance Tools support. 0.6.29 --with-google_perftools_module
Gzip Precompression Serves precompressed versions of static files. 0.6.23 --with-http_gzip_static_module
Gunzip On-the-fly decompressing of gzipped responses. 1.3.6 --with-http_gunzip_module
Image Filter Transform images with Libgd 0.7.54 --with-http_image_filter_module
MP4 Enables mp4 streaming with seeking ability. 1.1.3, 1.0.7 --with-http_mp4_module
Random Index Randomize directory indexes. 0.7.15 --with-http_random_index_module
Real IP For using nginx as backend 0.3.8 --with-http_realip_module
Secure Link Protect pages with a secret key. 0.7.18 --with-http_secure_link_module
SSL HTTPS/SSL support. --with-http_ssl_module
Stub Status View server statistics. 0.1.18 --with-http_stub_status_module
Substitution Replace text in pages --with-http_sub_module
WebDAV WebDAV pass-through support. 0.3.38 --with-http_dav_module
XSLT Post-process pages with XSLT. 0.7.8 --with-http_xslt_module

Mail modules

Name Description configure argument
Mail Core Core parameters for mail module. --with-mail
POP3 POP3 settings. --without-mail_pop3_module
IMAP IMAP settings. --without-mail_imap_module
SMTP SMTP settings. --without-mail_smtp_module
Auth HTTP Use Nginx to authenticate mail services.
Proxy Nginx can proxy IMAP, POP3, and SMTP protocols.
SSL This module ensures SSL/TLS support for POP3/IMAP/SMTP. --with-mail_ssl_module

Obsoleted articles

Most of the links above points to official up-to-date documentation provided by Nginx, Inc. For historical reasons there is a list of obsoleted wiki articles.

WARNING: these articles may contain outdated, incomplete or even incorrect information.

Please always refer to the official documentation avaiable at http://nginx.org.

Third party modules and Patches

Please see the catalog of 3rd party modules.

References