https://nginx.org/en/

Submitted URL:
https://nginx.org/en/
Report Finished:

The outgoing links identified from the page

JavaScript Variables · 3 found

Global JavaScript variables loaded on the window object of a page, are variables declared outside of functions and accessible from anywhere in the code within the current scope

Console log messages · 0 found

Messages logged to the web console

HTML

The raw HTML body of the page

<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"><html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"><title>nginx</title><meta name="viewport" content="width=device-width,initial-scale=1"><link rel="stylesheet" href="../css/style_en.css"></head><body><div id="banner"><div id="banner-content">

Celebrating <a href="https://github.com/nginx/nginx/commit/0e8348c50">20 years</a>
of nginx!
Read about our journey and milestones in the
<a href="https://blog.nginx.org/blog/celebrating-20-years-of-nginx">latest blog</a>.

</div></div><div id="main"><div id="menu"><input class="side-menu" type="checkbox" id="side-menu"><label class="hamb" for="side-menu"><span class="hamb-line"></span></label><nav class="nav"><h1><a href="/"><img src="/img/nginx_logo.png" alt="NGINX" class="lightimage" style="display: block; height: auto;"><div class="darkimageWrapper" style="mso-hide: all; display: none"><img src="/img/nginx_logo_dark.png" alt="NGINX" class="darkimage" style="display: none;"></div></a></h1><div><ul class="mobilemenu"><li>english<br></li><li><a href="../ru/">русский</a></li><li><br></li><li><a href="../news.html">news</a></li><li>about<br></li><li><a href="download.html">download</a></li><li><a href="security_advisories.html">security</a></li><li><a href="docs/">documentation</a></li><li><a href="docs/faq.html">faq</a></li><li><a href="books.html">books</a></li><li><a href="community.html">community</a></li><li><a href="enterprise.html">enterprise</a></li><li><br></li><li><a href="https://x.com/nginxorg">x.com</a></li><li><a href="https://blog.nginx.org/">blog</a></li><li><br></li><li><a href="https://unit.nginx.org/">unit</a></li><li><a href="docs/njs/">njs</a></li></ul></div></nav></div><div id="content"><h2>nginx</h2><table width="100%"><tbody><tr><td align="left"><a href="#basic_http_features">Basic HTTP server features</a><br><a href="#other_http_features">Other HTTP server features</a><br><a href="#mail_proxy_server_features">Mail proxy server features</a><br><a href="#generic_proxy_server_features">TCP/UDP proxy server features</a><br><a href="#architecture_and_scalability">Architecture and scalability</a><br><a href="#tested_os_and_platforms">Tested OS and platforms</a><br></td></tr></tbody></table><p>
nginx ("<i>engine x</i>") is an HTTP web server, reverse proxy,
content cache, load balancer,
TCP/UDP proxy server,
and mail proxy server.
Originally written by <a href="http://sysoev.ru/en/">Igor Sysoev</a>
and distributed under the
<a href="../LICENSE">2-clause BSD License</a>.
</p><p>
Known for flexibility and high performance with low resource utilization,
nginx is:

</p> <ul class="compact">
<li>
the world's most popular web server
[<a href="https://news.netcraft.com/archives/category/web-server-survey/">Netcraft</a>];
</li>

<li>
consistently one of the most popular
<a href="https://hub.docker.com/search?q=nginx">Docker images</a>
[<a href="https://www.datadoghq.com/docker-adoption/#six">DataDog</a>];
</li>

<li>
powering multiple
<a href="https://kubernetes.io/docs/concepts/services-networking/ingress-controllers/">Ingress
Controllers for Kubernetes</a>,
including
<a href="https://github.com/nginxinc/kubernetes-ingress">our own</a>.
</li>

</ul><p> 
</p><p>
Enterprise distributions, commercial support and training are
<a href="enterprise.html">available from F5, Inc.</a>
</p><a name="basic_http_features"></a><center><h4>Basic HTTP server features</h4></center><p>
</p> <ul class="compact">

<li>
Serving static and
<a href="docs/http/ngx_http_index_module.html">index</a>
files,
<a href="docs/http/ngx_http_autoindex_module.html">autoindexing</a>;
<a href="docs/http/ngx_http_core_module.html#open_file_cache">open file descriptor cache</a>;
</li>

<li>
<a href="docs/http/ngx_http_proxy_module.html">Accelerated
reverse proxying with caching</a>;
<a href="docs/http/ngx_http_upstream_module.html">load balancing
and fault tolerance</a>;
</li>

<li>
Accelerated support with caching of
<a href="docs/http/ngx_http_fastcgi_module.html">FastCGI</a>,
<a href="docs/http/ngx_http_uwsgi_module.html">uwsgi</a>,
<a href="docs/http/ngx_http_scgi_module.html">SCGI</a>, and
<a href="docs/http/ngx_http_memcached_module.html">memcached</a>
servers;
<a href="docs/http/ngx_http_upstream_module.html">load balancing
and fault tolerance</a>;
</li>

<li>
Modular architecture.
Filters include
<a href="docs/http/ngx_http_gzip_module.html">gzipping</a>,
byte ranges, chunked responses,
<a href="docs/http/ngx_http_xslt_module.html">XSLT</a>,
<a href="docs/http/ngx_http_ssi_module.html">SSI</a>,
and <a href="docs/http/ngx_http_image_filter_module.html">image
transformation</a> filter.
Multiple SSI inclusions within a single page can be processed in
parallel if they are handled by proxied or FastCGI/uwsgi/SCGI servers;
</li>

<li>
<a href="docs/http/ngx_http_ssl_module.html">SSL and
TLS SNI support</a>;
</li>

<li>
Support for <a href="docs/http/ngx_http_v2_module.html">HTTP/2</a>
with weighted and dependency-based prioritization;
</li>

<li>
Support for <a href="docs/http/ngx_http_v3_module.html">HTTP/3</a>.
</li>

</ul><p> 
</p><a name="other_http_features"></a><center><h4>Other HTTP server features</h4></center><p>
</p> <ul class="compact">

<li>
Name-based and IP-based
<a href="docs/http/request_processing.html">virtual servers</a>;
</li>

<li>
<a href="docs/http/ngx_http_core_module.html#keepalive_timeout">Keep-alive</a>
and pipelined connections support;
</li>

<li>
<a href="docs/http/ngx_http_log_module.html#log_format">Access
log formats</a>,
<a href="docs/http/ngx_http_log_module.html#access_log">buffered
log writing</a>,
<a href="docs/control.html#logs">fast log rotation</a>, and
<a href="docs/syslog.html">syslog logging</a>;
</li>

<li>
3xx-5xx error codes
<a href="docs/http/ngx_http_core_module.html#error_page">redirection</a>;
</li>

<li>
The rewrite module:
<a href="docs/http/ngx_http_rewrite_module.html">URI changing
using regular expressions</a>;
</li>

<li>
<a href="docs/http/ngx_http_rewrite_module.html#if">Executing
different functions</a> depending on the
<a href="docs/http/ngx_http_geo_module.html">client address</a>;
</li>

<li>
Access control based on
<a href="docs/http/ngx_http_access_module.html">client IP address</a>,
<a href="docs/http/ngx_http_auth_basic_module.html">by password (HTTP
Basic authentication)</a> and by the
<a href="docs/http/ngx_http_auth_request_module.html">result of
subrequest</a>;
</li>

<li>
Validation of
<a href="docs/http/ngx_http_referer_module.html">HTTP referer</a>;
</li>

<li>
The <a href="docs/http/ngx_http_dav_module.html">PUT, DELETE, MKCOL, COPY,
and MOVE</a> methods;
</li>

<li>
<a href="docs/http/ngx_http_flv_module.html">FLV</a>
and
<a href="docs/http/ngx_http_mp4_module.html">MP4</a>
streaming;
</li>

<li>
<a href="docs/http/ngx_http_core_module.html#limit_rate">Response rate limiting</a>;
</li>

<li>
Limiting the number of simultaneous
<a href="docs/http/ngx_http_limit_conn_module.html">connections</a>
or
<a href="docs/http/ngx_http_limit_req_module.html">requests</a>
coming from one address;
</li>

<li>
<a href="docs/http/ngx_http_geoip_module.html">IP-based geolocation</a>;
</li>

<li>
<a href="docs/http/ngx_http_split_clients_module.html">A/B testing</a>;
</li>

<li>
<a href="docs/http/ngx_http_mirror_module.html">Request mirroring</a>;
</li>

<li>
Embedded <a href="docs/http/ngx_http_perl_module.html">Perl</a>;
</li>

<li>
<a href="docs/njs/index.html">njs</a> scripting language.
</li>

</ul><p> 
</p><a name="mail_proxy_server_features"></a><center><h4>Mail proxy server features</h4></center><p>
</p> <ul class="compact">

<li>
User redirection to
<a href="docs/mail/ngx_mail_imap_module.html">IMAP</a>
or
<a href="docs/mail/ngx_mail_pop3_module.html">POP3</a>
server using an external HTTP
<a href="docs/mail/ngx_mail_auth_http_module.html">authentication</a>
server;
</li>

<li>
User authentication using an external HTTP
<a href="docs/mail/ngx_mail_auth_http_module.html">authentication</a>
server and connection redirection to an internal
<a href="docs/mail/ngx_mail_smtp_module.html">SMTP</a> server;
</li>

<li>
Authentication methods:

<ul class="compact">

<li>
<a href="docs/mail/ngx_mail_pop3_module.html#pop3_auth">POP3</a>:
USER/PASS, APOP, AUTH LOGIN/PLAIN/CRAM-MD5;
</li>

<li>
<a href="docs/mail/ngx_mail_imap_module.html#imap_auth">IMAP</a>:
LOGIN, AUTH LOGIN/PLAIN/CRAM-MD5;
</li>

<li>
<a href="docs/mail/ngx_mail_smtp_module.html#smtp_auth">SMTP</a>:
AUTH LOGIN/PLAIN/CRAM-MD5;
</li>

</ul>
</li>

<li>
<a href="docs/mail/ngx_mail_ssl_module.html">SSL</a> support;
</li>

<li>
<a href="docs/mail/ngx_mail_ssl_module.html#starttls">STARTTLS
and STLS</a> support.
</li>

</ul><p> 
</p><a name="generic_proxy_server_features"></a><center><h4>TCP/UDP proxy server features</h4></center><p>
</p> <ul class="compact">

<li>
<a href="docs/stream/ngx_stream_proxy_module.html">Generic proxying</a>
of TCP and UDP;
</li>

<li>
<a href="docs/stream/ngx_stream_ssl_module.html">SSL</a> and
TLS <a href="docs/stream/ngx_stream_ssl_preread_module.html">SNI</a> support
for TCP;
</li>

<li>
<a href="docs/stream/ngx_stream_upstream_module.html">Load balancing
and fault tolerance</a>;
</li>

<li>
Access control based on
<a href="docs/stream/ngx_stream_access_module.html">client address</a>;
</li>

<li>
Executing different functions depending on the
<a href="docs/stream/ngx_stream_geo_module.html">client address</a>;
</li>

<li>
Limiting the number of simultaneous
<a href="docs/stream/ngx_stream_limit_conn_module.html">connections</a>
coming from one address;
</li>

<li>
<a href="docs/stream/ngx_stream_log_module.html#log_format">Access
log formats</a>,
<a href="docs/stream/ngx_stream_log_module.html#access_log">buffered
log writing</a>,
<a href="docs/control.html#logs">fast log rotation</a>, and
<a href="docs/syslog.html">syslog logging</a>;
</li>

<li>
<a href="docs/stream/ngx_stream_geoip_module.html">IP-based geolocation</a>;
</li>

<li>
<a href="docs/stream/ngx_stream_split_clients_module.html">A/B testing</a>;
</li>

<li>
<a href="docs/njs/index.html">njs</a> scripting language.
</li>

</ul><p> 
</p><a name="architecture_and_scalability"></a><center><h4>Architecture and scalability</h4></center><p>
</p> <ul class="compact">

<li>
One master and several worker processes;
worker processes run under an unprivileged user;
</li>

<li>
<a href="docs/example.html">Flexible configuration</a>;
</li>

<li>
<a href="docs/control.html#reconfiguration">Reconfiguration</a>
and <a href="docs/control.html#upgrade">upgrade of an
executable</a> without interruption of the client servicing;
</li>

<li>
<a href="docs/events.html">Support</a> for
kqueue (FreeBSD 4.1+),
epoll (Linux 2.6+),
/dev/poll (Solaris 7 11/99+), event ports (Solaris 10),
select, and poll;
</li>

<li>
The support of the various kqueue features including EV_CLEAR, EV_DISABLE
(to temporarily disable events), NOTE_LOWAT, EV_EOF, number of available data,
error codes;
</li>

<li>
The support of various epoll features including
EPOLLRDHUP (Linux 2.6.17+, glibc 2.8+) and
EPOLLEXCLUSIVE (Linux 4.5+, glibc 2.24+);
</li>

<li>
sendfile (FreeBSD 3.1+, Linux 2.2+, macOS 10.5+), sendfile64 (Linux 2.4.21+),
and sendfilev (Solaris 8 7/01+) support;
</li>

<li>
<a href="docs/http/ngx_http_core_module.html#aio">File AIO</a>
(FreeBSD 4.3+, Linux 2.6.22+);
</li>

<li>
<a href="docs/http/ngx_http_core_module.html#directio">DIRECTIO</a>
(FreeBSD 4.4+, Linux 2.4+, Solaris 2.6+, macOS);
</li>

<li>
Accept-filters (FreeBSD 4.1+, NetBSD 5.0+) and TCP_DEFER_ACCEPT (Linux 2.4+)
<a href="docs/http/ngx_http_core_module.html#listen">support</a>;
</li>

<li>
10,000 inactive HTTP keep-alive connections take about 2.5M memory;
</li>

<li>
Data copy operations are kept to a minimum.
</li>

</ul><p> 
</p><a name="tested_os_and_platforms"></a><center><h4>Tested OS and platforms</h4></center><p>
</p> <ul class="compact">

<li>
FreeBSD 3&nbsp;— 12 / i386;
FreeBSD 5&nbsp;— 12 / amd64;
FreeBSD 11 / ppc;
FreeBSD 12 / ppc64;
</li>

<li>
Linux 2.2&nbsp;— 4 / i386;
Linux 2.6&nbsp;— 5 / amd64;
Linux 3&nbsp;— 4 / armv6l, armv7l, aarch64, ppc64le;
Linux 4&nbsp;— 5 / s390x;
</li>

<li>
Solaris 9 / i386, sun4u;
Solaris 10 / i386, amd64, sun4v;
Solaris 11 / x86;
</li>

<li>
AIX 7.1 / powerpc;
</li>

<li>
HP-UX 11.31 / ia64;
</li>

<li>
macOS / ppc, i386, x86_64;
</li>

<li>
Windows XP,
Windows Server 2003,
Windows 7,
Windows 10,
Windows 11.
</li>

</ul><p> 
</p></div></div>
</body></html>