view xml/en/index.xml @ 1009:135920b5c61d

Marked strings with entities in japanese translation as literal. This allows to preserve information and produce correct output if the XML parser expands entities on input. The markup is similar to english and russian versions of the document.
author Vladimir Homutov <vl@nginx.com>
date Mon, 11 Nov 2013 11:54:16 +0400
parents 8b593afa5951
children 36cf06691ff1
line wrap: on
line source

<!--
  Copyright (C) Igor Sysoev
  Copyright (C) Nginx, Inc.
  -->

<!DOCTYPE article SYSTEM "../../dtd/article.dtd">

<article name="nginx"
         link="/en/"
         lang="en"
         rev="14">


<section>

<para>
nginx [engine x] is an HTTP and reverse proxy server,
as well as a mail proxy server,
written by <link url="http://sysoev.ru/en/">Igor Sysoev</link>.
For a long time, it has been running
on many heavily loaded Russian sites including
<link url="http://www.yandex.ru">Yandex</link>,
<link url="http://www.mail.ru">Mail.Ru</link>,
<link url="http://vkontakte.ru">VKontakte</link>, and
<link url="http://www.rambler.ru">Rambler</link>.
According to Netcraft nginx served or proxied
<link url="http://news.netcraft.com/archives/2013/11/01/november-2013-web-server-survey.html">15.31%
busiest sites in November 2013</link>.
Here are some of the success stories:
<link url="https://signup.netflix.com/openconnect/software">Netflix</link>,
<link url="http://nginx.com/cs/nginx-automattic.html">Wordpress.com</link>,
<link url="http://blog.fastmail.fm/2007/01/04/webimappop-frontend-proxies-changed-to-nginx/">FastMail.FM</link>.
</para>

<para>
The sources and documentation are distributed under the
<link url="../LICENSE">2-clause BSD-like license</link>.
</para>

</section>


<section id="basic_http_features"
        name="Basic HTTP server features">

<para>
<list type="bullet">

<listitem>
Serving static and
<link doc="docs/http/ngx_http_index_module.xml">index</link>
files,
<link doc="docs/http/ngx_http_autoindex_module.xml">autoindexing</link>;
<link doc="docs/http/ngx_http_core_module.xml"
       id="open_file_cache">open file descriptor cache</link>;
</listitem>

<listitem>
<link doc="docs/http/ngx_http_proxy_module.xml">Accelerated
reverse proxying with caching</link>;
<link doc="docs/http/ngx_http_upstream_module.xml">simple
load balancing and fault tolerance</link>;
</listitem>

<listitem>
Accelerated support with caching of
<link doc="docs/http/ngx_http_fastcgi_module.xml">FastCGI</link>,
uwsgi, SCGI, and
<link doc="docs/http/ngx_http_memcached_module.xml">memcached</link>
servers;
<link doc="docs/http/ngx_http_upstream_module.xml">simple
load balancing and fault tolerance</link>;
</listitem>

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

<listitem>
<link doc="docs/http/ngx_http_ssl_module.xml">SSL and
TLS SNI support</link>.
</listitem>

</list>
</para>

</section>


<section id="other_http_features"
        name="Other HTTP server features">

<para>
<list type="bullet">

<listitem>
Name-based and IP-based
<link doc="docs/http/request_processing.xml">virtual servers</link>;
</listitem>

<listitem>
<link doc="docs/http/ngx_http_core_module.xml"
       id="keepalive_timeout">Keep-alive</link>
and pipelined connections support;
</listitem>

<listitem>
Flexible configuration;
</listitem>

<listitem>
<link doc="docs/control.xml" id="reconfiguration">Reconfiguration</link>
and <link doc="docs/control.xml" id="upgrade">upgrade of an
executable</link> without interruption of the client servicing;
</listitem>

<listitem>
<link doc="docs/http/ngx_http_log_module.xml" id="log_format">Access
log formats</link>,
<link doc="docs/http/ngx_http_log_module.xml" id="access_log">buffered
log writing</link>, and
<link doc="docs/control.xml" id="logs">fast log rotation</link>;
</listitem>

<listitem>
3xx-5xx error codes
<link doc="docs/http/ngx_http_core_module.xml"
       id="error_page">redirection</link>;
</listitem>

<listitem>
The rewrite module:
<link doc="docs/http/ngx_http_rewrite_module.xml">URI changing
using regular expressions</link>;
</listitem>

<listitem>
<link doc="docs/http/ngx_http_rewrite_module.xml" id="if">Executing
different functions</link> depending on the
<link doc="docs/http/ngx_http_geo_module.xml">client address</link>;
</listitem>

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

<listitem>
Validation of
<link doc="docs/http/ngx_http_referer_module.xml">HTTP referer</link>;
</listitem>

<listitem>
The <link doc="docs/http/ngx_http_dav_module.xml">PUT, DELETE, MKCOL, COPY,
and MOVE</link> methods;
</listitem>

<listitem>
<link doc="docs/http/ngx_http_flv_module.xml">FLV</link>
and
<link doc="docs/http/ngx_http_mp4_module.xml">MP4</link>
streaming;
</listitem>

<listitem>
<link doc="docs/http/ngx_http_core_module.xml"
       id="limit_rate">Response rate limiting</link>;
</listitem>

<listitem>
Limiting the number of simultaneous
<link doc="docs/http/ngx_http_limit_conn_module.xml">connections</link>
or
<link doc="docs/http/ngx_http_limit_req_module.xml">requests</link>
coming from one address;
</listitem>

<listitem>
<link doc="docs/http/ngx_http_perl_module.xml">Embedded Perl</link>.
</listitem>

</list>
</para>

</section>


<section id="mail_proxy_server_features"
        name="Mail proxy server features">

<para>
<list type="bullet">

<listitem>
User redirection to
<link doc="docs/mail/ngx_mail_imap_module.xml">IMAP</link>
or
<link doc="docs/mail/ngx_mail_pop3_module.xml">POP3</link>
server using an external HTTP
<link doc="docs/mail/ngx_mail_auth_http_module.xml">authentication</link>
server;
</listitem>

<listitem>
User authentication using an external HTTP
<link doc="docs/mail/ngx_mail_auth_http_module.xml">authentication</link>
server and connection redirection to an internal
<link doc="docs/mail/ngx_mail_smtp_module.xml">SMTP</link> server;
</listitem>

<listitem>
Authentication methods:

<list type="bullet">

<listitem>
<link doc="docs/mail/ngx_mail_pop3_module.xml" id="pop3_auth">POP3</link>:
USER/PASS, APOP, AUTH LOGIN/PLAIN/CRAM-MD5;
</listitem>

<listitem>
<link doc="docs/mail/ngx_mail_imap_module.xml" id="imap_auth">IMAP</link>:
LOGIN, AUTH LOGIN/PLAIN/CRAM-MD5;
</listitem>

<listitem>
<link doc="docs/mail/ngx_mail_smtp_module.xml" id="smtp_auth">SMTP</link>:
AUTH LOGIN/PLAIN/CRAM-MD5;
</listitem>

</list>
</listitem>

<listitem>
<link doc="docs/mail/ngx_mail_ssl_module.xml">SSL</link> support;
</listitem>

<listitem>
<link doc="docs/mail/ngx_mail_ssl_module.xml" id="starttls">STARTTLS
and STLS</link> support.
</listitem>

</list>
</para>

</section>


<section id="architecture_and_scalability"
        name="Architecture and scalability">

<para>
<list type="bullet">

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

<listitem>
<link doc="docs/events.xml">Support</link> for
kqueue (FreeBSD 4.1+),
epoll (Linux 2.6+), rt signals (Linux 2.2.19+),
/dev/poll (Solaris 7 11/99+), event ports (Solaris 10),
select, and poll;
</listitem>

<listitem>
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;
</listitem>

<listitem>
sendfile (FreeBSD 3.1+, Linux 2.2+, Mac OS X 10.5+), sendfile64 (Linux 2.4.21+),
and sendfilev (Solaris 8 7/01+) support;
</listitem>

<listitem>
<link doc="docs/http/ngx_http_core_module.xml" id="aio">File AIO</link>
(FreeBSD 4.3+, Linux 2.6.22+);
</listitem>

<listitem>
<link doc="docs/http/ngx_http_core_module.xml" id="directio">DIRECTIO</link>
(FreeBSD 4.4+, Linux 2.4+, Solaris 2.6+, Mac OS X);
</listitem>

<listitem>
Accept-filters (FreeBSD 4.1+, NetBSD 5.0+) and TCP_DEFER_ACCEPT (Linux 2.4+)
<link doc="docs/http/ngx_http_core_module.xml" id="listen">support</link>;
</listitem>

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

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

</list>
</para>

</section>


<section id="tested_os_and_platforms"
        name="Tested OS and platforms">

<para>
<list type="bullet">

<listitem>
FreeBSD 3&mdash;10 / i386; FreeBSD 5&mdash;10 / amd64;
</listitem>

<listitem>
Linux 2.2&mdash;3 / i386; Linux 2.6&mdash;3 / amd64;
</listitem>

<listitem>
Solaris 9 / i386, sun4u; Solaris 10 / i386, amd64, sun4v;
</listitem>

<listitem>
AIX 7.1 / powerpc;
</listitem>

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

<listitem>
Mac OS X / ppc, i386;
</listitem>

<listitem>
Windows XP, Windows Server 2003.
</listitem>

</list>
</para>

</section>

</article>