Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
nginx
GitHub Repository: nginx/nginx.org
Path: blob/main/xml/cn/index.xml
1 views
1
<!--
2
Copyright (C) Igor Sysoev
3
Copyright (C) Nginx, Inc.
4
-->
5
6
<!DOCTYPE article SYSTEM "../../dtd/article.dtd">
7
8
<article name="nginx"
9
link="/cn/"
10
lang="cn"
11
rev="3">
12
13
14
<section>
15
16
<para>
17
nginx [engine x]是<link url="http://sysoev.ru/en/">Igor Sysoev</link>编写的一个HTTP和反向代理服务器,另外它也可以作为邮件代理服务器。
18
它已经在众多流量很大的俄罗斯网站上使用了很长时间,这些网站包括<link url="http://www.yandex.ru">Yandex</link><link url="http://www.mail.ru">Mail.Ru</link><link url="http://www.vkontakte.ru">VKontakte</link>,以及<link url="http://www.rambler.ru">Rambler</link>。据Netcraft统计,在2012年8月份,<link url="http://news.netcraft.com/archives/2012/08/02/august-2012-web-server-survey.html">世界上最繁忙的网站中有11.48%</link>使用Nginx作为其服务器或者代理服务器。部分成功案例请见:
19
<link url="https://signup.netflix.com/openconnect/software">Netflix</link>
20
<link url="http://barry.wordpress.com/2008/04/28/load-balancer-update/">Wordpress.com</link>
21
<link url="http://blog.fastmail.fm/2007/01/04/webimappop-frontend-proxies-changed-to-nginx/">FastMail.FM</link>
22
</para>
23
24
<para>
25
Nginx的源码使用的许可为<link url="http://nginx.org/LICENSE">两条款类BSD协议</link>
26
</para>
27
28
</section>
29
30
31
<section id="basic_http_features"
32
name="基本的HTTP服务器特性">
33
34
<para>
35
<list type="bullet">
36
37
<listitem>
38
处理静态文件,<link doc="docs/http/ngx_http_index_module.xml">索引</link>文件以及<link doc="docs/http/ngx_http_autoindex_module.xml">自动索引</link><link doc="docs/http/ngx_http_core_module.xml" id="open_file_cache">打开文件描述符缓存</link>
39
</listitem>
40
41
<listitem>
42
<link doc="docs/http/ngx_http_proxy_module.xml">使用缓存加速反向代理</link><link doc="docs/http/ngx_http_upstream_module.xml">简单负载均衡以及容错</link>
43
</listitem>
44
45
<listitem>
46
远程<link doc="docs/http/ngx_http_fastcgi_module.xml">FastCGI</link>,uwsgi,SCGI,和<link doc="docs/http/ngx_http_memcached_module.xml">memcached</link>服务的缓存加速支持;<link doc="docs/http/ngx_http_upstream_module.xml">简单的负载均衡以及容错</link>
47
</listitem>
48
49
<listitem>
50
模块化的架构。过滤器包括<link doc="docs/http/ngx_http_gzip_module.xml">gzip压缩</link>、ranges支持、chunked响应、<link doc="docs/http/ngx_http_xslt_module.xml">XSLT</link><link doc="docs/http/ngx_http_ssi_module.xml">SSI</link>以及<link doc="docs/http/ngx_http_image_filter_module.xml">图像缩放</link>。在SSI 过滤器中,一个包含多个SSI的页面,如果经由FastCGI或反向代理处理,可被并行处理;
51
</listitem>
52
53
<listitem>
54
<link doc="docs/http/ngx_http_ssl_module.xml">支持SSL,TLS SNI</link>
55
</listitem>
56
57
</list>
58
</para>
59
60
</section>
61
62
63
<section id="other_http_features"
64
name="其他的HTTP服务器特性">
65
66
<para>
67
<list type="bullet">
68
69
<listitem>
70
基于名字和IP的<link doc="docs/http/request_processing.xml">虚拟主机</link>
71
</listitem>
72
73
<listitem>
74
<link doc="docs/http/ngx_http_core_module.xml" id="keepalive_timeout">Keep-alive</link>和pipelined连接支持;
75
</listitem>
76
77
<listitem>
78
灵活的配置;
79
</listitem>
80
81
<listitem>
82
<link doc="docs/control.xml" id="reconfiguration">重新加载配置</link>以及<link doc="docs/control.xml" id="upgrade">在线升级</link>时,不需要中断正在处理的请求;
83
</listitem>
84
85
<listitem>
86
<link doc="docs/http/ngx_http_log_module.xml" id="log_format">自定义访问日志格式</link><link doc="docs/http/ngx_http_log_module.xml" id="access_log">带缓存的日志写操作</link>以及<link doc="docs/control.xml" id="logs">快速日志轮转</link>
87
</listitem>
88
89
<listitem>
90
3xx-5xx错误代码<link doc="docs/http/ngx_http_core_module.xml" id="error_page">重定向</link>
91
</listitem>
92
93
<listitem>
94
重写(rewrite)模块:<link doc="docs/http/ngx_http_rewrite_module.xml">使用正则表达式改变URI</link>
95
</listitem>
96
97
<listitem>
98
根据<link doc="docs/http/ngx_http_geo_module.xml">客户端地址</link><link doc="docs/http/ngx_http_rewrite_module.xml" id="if">执行不同的功能</link>
99
</listitem>
100
101
<listitem>
102
基于<link doc="docs/http/ngx_http_access_module.xml">客户端IP地址</link><link doc="docs/http/ngx_http_auth_basic_module.xml">HTTP基本认证机制</link>的访问控制;
103
</listitem>
104
105
<listitem>
106
支持验证<link doc="docs/http/ngx_http_referer_module.xml">HTTP referer</link>
107
</listitem>
108
109
<listitem>
110
支持<link doc="docs/http/ngx_http_dav_module.xml">PUT、DELETE、MKCOL、COPY以及MOVE</link>方法;
111
</listitem>
112
113
<listitem>
114
支持<link doc="docs/http/ngx_http_flv_module.xml">FLV流</link><link doc="docs/http/ngx_http_mp4_module.xml">MP4流</link>
115
</listitem>
116
117
<listitem>
118
<link doc="docs/http/ngx_http_core_module.xml" id="limit_rate">速度限制</link>
119
</listitem>
120
121
<listitem>
122
来自同一地址的同时<link doc="docs/http/ngx_http_limit_conn_module.xml">连接数</link><link doc="docs/http/ngx_http_limit_req_module.xml">请求数</link>限制;
123
</listitem>
124
125
<listitem>
126
<link doc="docs/http/ngx_http_perl_module.xml">嵌入Perl语言</link>
127
</listitem>
128
129
</list>
130
</para>
131
132
</section>
133
134
135
<section id="mail_proxy_server_features"
136
name="邮件代理服务器特性">
137
138
<para>
139
<list type="bullet">
140
141
<listitem>
142
使用外部HTTP<link doc="docs/mail/ngx_mail_auth_http_module.xml">认证</link>服务器重定向用户到<link doc="docs/mail/ngx_mail_imap_module.xml">IMAP</link>/<link doc="docs/mail/ngx_mail_pop3_module.xml">POP3</link>后端;
143
</listitem>
144
145
<listitem>
146
使用外部HTTP<link doc="docs/mail/ngx_mail_auth_http_module.xml">认证</link>服务器认证用户后重定向连接到内部<link doc="docs/mail/ngx_mail_smtp_module.xml">SMTP</link>后端;
147
</listitem>
148
149
<listitem>
150
支持的认证方式:
151
152
<list type="bullet">
153
154
<listitem>
155
<link doc="docs/mail/ngx_mail_pop3_module.xml" id="pop3_auth">POP3</link>: USER/PASS, APOP, AUTH LOGIN/PLAIN/CRAM-MD5;
156
</listitem>
157
158
<listitem>
159
<link doc="docs/mail/ngx_mail_imap_module.xml" id="imap_auth">IMAP</link>: LOGIN, AUTH LOGIN/PLAIN/CRAM-MD5;
160
</listitem>
161
162
<listitem>
163
<link doc="docs/mail/ngx_mail_smtp_module.xml" id="smtp_auth">SMTP</link>: AUTH LOGIN/PLAIN/CRAM-MD5;
164
</listitem>
165
166
</list>
167
</listitem>
168
169
<listitem>
170
<link doc="docs/mail/ngx_mail_ssl_module.xml">SSL</link>支持;
171
</listitem>
172
173
<listitem>
174
<link doc="docs/mail/ngx_mail_ssl_module.xml" id="starttls">STARTTLS和STLS</link>支持。
175
</listitem>
176
177
</list>
178
</para>
179
180
</section>
181
182
183
<section id="architecture_and_scalability"
184
name="架构和扩展性">
185
186
<para>
187
<list type="bullet">
188
189
<listitem>
190
一个主进程和多个工作进程,工作进程以非特权用户运行;
191
</listitem>
192
193
<listitem>
194
<link doc="docs/events.xml">支持</link>的事件机制: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以及poll;
195
</listitem>
196
197
<listitem>
198
众多支持的kqueue特性包括EV_CLEAR、EV_DISABLE(临时禁止事件)、NOTE_LOWAT、EV_EOF,可用数据的数量,错误代码;
199
</listitem>
200
201
<listitem>
202
支持sendfile(FreeBSD 3.1+, Linux 2.2+, Mac OS X 10.5+)、sendfile64(Linux 2.4.21+)和sendfilev(Solaris 8 7/01+);
203
</listitem>
204
205
<listitem>
206
<link doc="docs/http/ngx_http_core_module.xml" id="aio">文件AIO</link>(FreeBSD 4.3+, Linux 2.6.22+);
207
</listitem>
208
209
<listitem>
210
<link doc="docs/http/ngx_http_core_module.xml" id="directio">DIRECTIO</link>
211
(FreeBSD 4.4+, Linux 2.4+, Solaris 2.6+, Mac OS X);
212
</listitem>
213
214
<listitem>
215
<link doc="docs/http/ngx_http_core_module.xml" id="listen">支持</link>Accept-filters(FreeBSD 4.1+, NetBSD 5.0+)和 TCP_DEFER_ACCEPT(Linux 2.4+);
216
</listitem>
217
218
<listitem>
219
10000个非活跃的HTTP keep-alive连接仅占用约2.5M内存;
220
</listitem>
221
222
<listitem>
223
尽可能避免数据拷贝操作。
224
</listitem>
225
226
</list>
227
</para>
228
229
</section>
230
231
232
<section id="tested_os_and_platforms"
233
name="测试过的操作系统和平台">
234
235
<para>
236
<list type="bullet">
237
238
<listitem>
239
FreeBSD 3 &mdash; 10 / i386; FreeBSD 5 &mdash; 10 / amd64;
240
</listitem>
241
242
<listitem>
243
Linux 2.2 &mdash; 3 / i386; Linux 2.6 &mdash; 3 / amd64;
244
</listitem>
245
246
<listitem>
247
Solaris 9 / i386, sun4u; Solaris 10 / i386, amd64, sun4v;
248
</listitem>
249
250
<listitem>
251
AIX 7.1 / powerpc;
252
</listitem>
253
254
<listitem>
255
HP-UX 11.31 / ia64;
256
</listitem>
257
258
<listitem>
259
MacOS X / ppc, i386;
260
</listitem>
261
262
<listitem>
263
Windows XP, Windows Server 2003.
264
</listitem>
265
266
</list>
267
</para>
268
269
</section>
270
271
272
</article>
273