annotate xml/en/docs/http/ngx_http_core_module.xml @ 576:cac22cc79afd

Documented the "etag" directive.
author Ruslan Ermilov <ru@nginx.com>
date Tue, 10 Jul 2012 11:44:07 +0000
parents f8148fc88224
children be54c443235a
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1 <?xml version="1.0"?>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
3 <!DOCTYPE module SYSTEM "../../../../dtd/module.dtd">
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
4
89
f451dc5c5c82 Module names corrected.
Ruslan Ermilov <ru@nginx.com>
parents: 88
diff changeset
5 <module name="Module ngx_http_core_module"
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
6 link="/en/docs/http/ngx_http_core_module.html"
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
7 lang="en">
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
8
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
9 <section id="directives" name="Directives">
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
10
171
6eeaa9e1f3b5 Made "appeared-in" an element, and added support for
Ruslan Ermilov <ru@nginx.com>
parents: 169
diff changeset
11 <directive name="aio">
102
c76a257f3fd4 The directive name is now automatically printed in <default> and <syntax>.
Ruslan Ermilov <ru@nginx.com>
parents: 98
diff changeset
12 <syntax>
364
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 318
diff changeset
13 <literal>on</literal> |
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 318
diff changeset
14 <literal>off</literal> |
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 318
diff changeset
15 <literal>sendfile</literal></syntax>
102
c76a257f3fd4 The directive name is now automatically printed in <default> and <syntax>.
Ruslan Ermilov <ru@nginx.com>
parents: 98
diff changeset
16 <default>off</default>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
17 <context>http</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
18 <context>server</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
19 <context>location</context>
171
6eeaa9e1f3b5 Made "appeared-in" an element, and added support for
Ruslan Ermilov <ru@nginx.com>
parents: 169
diff changeset
20 <appeared-in>0.8.11</appeared-in>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
21
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
22 <para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
23 Enables or disables the use of asynchronous file I/O (AIO)
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
24 on FreeBSD and Linux.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
25 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
26
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
27 <para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
28 On FreeBSD, AIO is usable starting from FreeBSD&nbsp;4.3.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
29 AIO can either be linked statically into a kernel:
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
30 <example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
31 options VFS_AIO
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
32 </example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
33 or loaded dynamically as a kernel loadable module:
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
34 <example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
35 kldload aio
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
36 </example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
37 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
38
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
39 <para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
40 In FreeBSD versions 5 and 6, enabling AIO statically, or dynamically
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
41 when booting the kernel, will cause the entire networking subsystem
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
42 to use the Giant lock that can impact overall performance negatively.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
43 This limitation has been removed in FreeBSD&nbsp;6.4-STABLE in 2009, and in
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
44 FreeBSD&nbsp;7.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
45 However, starting from FreeBSD&nbsp;5.3 it is possible to enable AIO
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
46 without the penalty of running the networking subsystem under a
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
47 Giant lock&mdash;for this to work, the AIO module needs to be loaded
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
48 after the kernel has booted.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
49 In this case, the following message will appear in
148
682163f2b298 Unified article/path and module/pathname into a single "path".
Ruslan Ermilov <ru@nginx.com>
parents: 147
diff changeset
50 <path>/var/log/messages</path>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
51 <example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
52 WARNING: Network stack Giant-free, but aio requires Giant.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
53 Consider adding 'options NET_WITH_GIANT' or setting debug.mpsafenet=0
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
54 </example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
55 and can safely be ignored.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
56 <note>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
57 The requirement to use the Giant lock with AIO is related to the
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
58 fact that FreeBSD supports asynchronous calls
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
59 <c-func>aio_read</c-func>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
60 and
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
61 <c-func>aio_write</c-func>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
62 when working with sockets.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
63 However, since nginx only uses AIO for disk I/O, no problems should arise.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
64 </note>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
65 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
66
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
67 <para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
68 For AIO to work,
106
56457a474903 If text of the link is not provided, the @id is used.
Ruslan Ermilov <ru@nginx.com>
parents: 102
diff changeset
69 <link id="sendfile"/>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
70 needs to be disabled:
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
71 <example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
72 location /video/ {
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
73 sendfile off;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
74 aio on;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
75 output_buffers 1 64k;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
76 }
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
77 </example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
78 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
79
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
80 <para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
81 In addition, starting from FreeBSD&nbsp;5.2.1 and nginx&nbsp;0.8.12, AIO can
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
82 also be used to pre-load data for <c-func>sendfile</c-func>:
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
83 <example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
84 location /video/ {
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
85 sendfile on;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
86 tcp_nopush on;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
87 aio sendfile;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
88 }
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
89 </example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
90 In this configuration, <c-func>sendfile</c-func> is called with
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
91 the <c-def>SF_NODISKIO</c-def> flag which causes it not to
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
92 block on disk I/O and instead report back when the data are not in
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
93 memory; nginx then initiates an asynchronous data load by reading
364
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 318
diff changeset
94 one byte.
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 318
diff changeset
95 The FreeBSD kernel then loads the first 128K bytes
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
96 of a file into memory, however next reads will only load data
364
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 318
diff changeset
97 in 16K chunks.
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 318
diff changeset
98 This can be tuned using the
106
56457a474903 If text of the link is not provided, the @id is used.
Ruslan Ermilov <ru@nginx.com>
parents: 102
diff changeset
99 <link id="read_ahead"/>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
100 directive.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
101 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
102
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
103 <para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
104 On Linux, AIO is usable starting from kernel version 2.6.22;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
105 plus, it is also necessary to enable
106
56457a474903 If text of the link is not provided, the @id is used.
Ruslan Ermilov <ru@nginx.com>
parents: 102
diff changeset
106 <link id="directio"/>,
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
107 otherwise reading will be blocking:
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
108 <example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
109 location /video/ {
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
110 aio on;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
111 directio 512;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
112 output_buffers 1 128k;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
113 }
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
114 </example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
115 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
116
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
117 <para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
118 On Linux,
106
56457a474903 If text of the link is not provided, the @id is used.
Ruslan Ermilov <ru@nginx.com>
parents: 102
diff changeset
119 <link id="directio"/>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
120 can only be used for reading blocks that are aligned on 512-byte
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
121 boundaries (or 4K for XFS).
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
122 Reading of unaligned file's end is still made in blocking mode.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
123 The same holds true for byte range requests, and for FLV requests
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
124 not from the beginning of a file: reading of unaligned data at the
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
125 beginning and end of a file will be blocking.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
126 There is no need to turn off
106
56457a474903 If text of the link is not provided, the @id is used.
Ruslan Ermilov <ru@nginx.com>
parents: 102
diff changeset
127 <link id="sendfile"/>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
128 explicitly as it is turned off automatically when
106
56457a474903 If text of the link is not provided, the @id is used.
Ruslan Ermilov <ru@nginx.com>
parents: 102
diff changeset
129 <link id="directio"/>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
130 is used.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
131 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
132
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
133 </directive>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
134
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
135
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
136 <directive name="alias">
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
137 <syntax><value>path</value></syntax>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
138 <default/>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
139 <context>location</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
140
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
141 <para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
142 Defines a replacement for the specified location.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
143 For example, with the following configuration
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
144 <example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
145 location /i/ {
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
146 alias /data/w3/images/;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
147 }
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
148 </example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
149 the request of
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
150 “<literal>/i/top.gif</literal>” will be responded
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
151 with the file
148
682163f2b298 Unified article/path and module/pathname into a single "path".
Ruslan Ermilov <ru@nginx.com>
parents: 147
diff changeset
152 <path>/data/w3/images/top.gif</path>.
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
153 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
154
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
155 <para>
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
156 The <value>path</value> value can contain variables
65
f122a777a6de - Use of $document_root and $realpath_root in "alias" is prohibited.
Ruslan Ermilov <ru@nginx.com>
parents: 57
diff changeset
157 except <var>$document_root</var> and <var>$realpath_root</var>.
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
158 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
159
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
160 <para>
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
161 If <literal>alias</literal> is used inside a location defined
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
162 with a regular expression then such regular expression should
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
163 contain captures and <literal>alias</literal> should refer to
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
164 these captures (0.7.40), for example:
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
165 <example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
166 location ~ ^/users/(.+\.(?:gif|jpe?g|png))$ {
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
167 alias /data/w3/images/$1;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
168 }
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
169 </example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
170 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
171
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
172 <para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
173 When location matches the last part of the directive's value:
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
174 <example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
175 location /images/ {
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
176 alias /data/w3/images/;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
177 }
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
178 </example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
179 it is better to use the
106
56457a474903 If text of the link is not provided, the @id is used.
Ruslan Ermilov <ru@nginx.com>
parents: 102
diff changeset
180 <link id="root"/>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
181 directive instead:
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
182 <example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
183 location /images/ {
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
184 root /data/w3;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
185 }
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
186 </example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
187 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
188
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
189 </directive>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
190
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
191
162
a8bd350e3481 Documented the "chunked_transfer_encoding" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 161
diff changeset
192 <directive name="chunked_transfer_encoding">
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
193 <syntax><literal>on</literal> | <literal>off</literal></syntax>
162
a8bd350e3481 Documented the "chunked_transfer_encoding" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 161
diff changeset
194 <default>on</default>
a8bd350e3481 Documented the "chunked_transfer_encoding" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 161
diff changeset
195 <context>http</context>
a8bd350e3481 Documented the "chunked_transfer_encoding" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 161
diff changeset
196 <context>server</context>
a8bd350e3481 Documented the "chunked_transfer_encoding" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 161
diff changeset
197 <context>location</context>
a8bd350e3481 Documented the "chunked_transfer_encoding" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 161
diff changeset
198
a8bd350e3481 Documented the "chunked_transfer_encoding" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 161
diff changeset
199 <para>
a8bd350e3481 Documented the "chunked_transfer_encoding" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 161
diff changeset
200 Allows disabling chunked transfer encoding in HTTP/1.1.
a8bd350e3481 Documented the "chunked_transfer_encoding" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 161
diff changeset
201 It may come in handy when using a software failing to support
a8bd350e3481 Documented the "chunked_transfer_encoding" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 161
diff changeset
202 chunked encoding though the standard requires it.
a8bd350e3481 Documented the "chunked_transfer_encoding" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 161
diff changeset
203 </para>
a8bd350e3481 Documented the "chunked_transfer_encoding" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 161
diff changeset
204
a8bd350e3481 Documented the "chunked_transfer_encoding" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 161
diff changeset
205 </directive>
a8bd350e3481 Documented the "chunked_transfer_encoding" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 161
diff changeset
206
a8bd350e3481 Documented the "chunked_transfer_encoding" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 161
diff changeset
207
82
89c31b453d40 Sorted directives alphabetically.
Ruslan Ermilov <ru@nginx.com>
parents: 72
diff changeset
208 <directive name="client_body_buffer_size">
89c31b453d40 Sorted directives alphabetically.
Ruslan Ermilov <ru@nginx.com>
parents: 72
diff changeset
209
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
210 <syntax><value>size</value></syntax>
102
c76a257f3fd4 The directive name is now automatically printed in <default> and <syntax>.
Ruslan Ermilov <ru@nginx.com>
parents: 98
diff changeset
211 <default>8k|16k</default>
82
89c31b453d40 Sorted directives alphabetically.
Ruslan Ermilov <ru@nginx.com>
parents: 72
diff changeset
212 <context>http</context>
89c31b453d40 Sorted directives alphabetically.
Ruslan Ermilov <ru@nginx.com>
parents: 72
diff changeset
213 <context>server</context>
89c31b453d40 Sorted directives alphabetically.
Ruslan Ermilov <ru@nginx.com>
parents: 72
diff changeset
214 <context>location</context>
89c31b453d40 Sorted directives alphabetically.
Ruslan Ermilov <ru@nginx.com>
parents: 72
diff changeset
215
89c31b453d40 Sorted directives alphabetically.
Ruslan Ermilov <ru@nginx.com>
parents: 72
diff changeset
216 <para>
89c31b453d40 Sorted directives alphabetically.
Ruslan Ermilov <ru@nginx.com>
parents: 72
diff changeset
217 Sets buffer size for reading client request body.
89c31b453d40 Sorted directives alphabetically.
Ruslan Ermilov <ru@nginx.com>
parents: 72
diff changeset
218 In case request body is larger than the buffer,
89c31b453d40 Sorted directives alphabetically.
Ruslan Ermilov <ru@nginx.com>
parents: 72
diff changeset
219 the whole body or only its part is written to a
89c31b453d40 Sorted directives alphabetically.
Ruslan Ermilov <ru@nginx.com>
parents: 72
diff changeset
220 <link id="client_body_temp_path">temporary file</link>.
89c31b453d40 Sorted directives alphabetically.
Ruslan Ermilov <ru@nginx.com>
parents: 72
diff changeset
221 By default, buffer size is equal to two memory pages.
89c31b453d40 Sorted directives alphabetically.
Ruslan Ermilov <ru@nginx.com>
parents: 72
diff changeset
222 This is 8K on x86, other 32-bit platforms, and x86-64.
89c31b453d40 Sorted directives alphabetically.
Ruslan Ermilov <ru@nginx.com>
parents: 72
diff changeset
223 It is usually 16K on other 64-bit platforms.
89c31b453d40 Sorted directives alphabetically.
Ruslan Ermilov <ru@nginx.com>
parents: 72
diff changeset
224 </para>
89c31b453d40 Sorted directives alphabetically.
Ruslan Ermilov <ru@nginx.com>
parents: 72
diff changeset
225
89c31b453d40 Sorted directives alphabetically.
Ruslan Ermilov <ru@nginx.com>
parents: 72
diff changeset
226 </directive>
89c31b453d40 Sorted directives alphabetically.
Ruslan Ermilov <ru@nginx.com>
parents: 72
diff changeset
227
89c31b453d40 Sorted directives alphabetically.
Ruslan Ermilov <ru@nginx.com>
parents: 72
diff changeset
228
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
229 <directive name="client_body_in_file_only">
102
c76a257f3fd4 The directive name is now automatically printed in <default> and <syntax>.
Ruslan Ermilov <ru@nginx.com>
parents: 98
diff changeset
230 <syntax>
364
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 318
diff changeset
231 <literal>on</literal> |
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 318
diff changeset
232 <literal>clean</literal> |
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 318
diff changeset
233 <literal>off</literal></syntax>
102
c76a257f3fd4 The directive name is now automatically printed in <default> and <syntax>.
Ruslan Ermilov <ru@nginx.com>
parents: 98
diff changeset
234 <default>off</default>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
235 <context>http</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
236 <context>server</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
237 <context>location</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
238
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
239 <para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
240 Determines whether nginx should save the entire client request body
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
241 into a file.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
242 This directive can be used during debugging, or when using the
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
243 <var>$request_body_file</var>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
244 variable, or the
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
245 <link doc="ngx_http_perl_module.xml" id="methods">$r->request_body_file</link>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
246 method of the module
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
247 <link doc="ngx_http_perl_module.xml">ngx_http_perl_module</link>.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
248 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
249
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
250 <para>
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
251 When set to the value <literal>on</literal>, temporary files are not
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
252 removed after request processing.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
253 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
254
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
255 <para>
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
256 The value <literal>clean</literal> will cause the temporary files
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
257 left after request processing to be removed.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
258 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
259
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
260 </directive>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
261
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
262
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
263 <directive name="client_body_in_single_buffer">
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
264 <syntax><literal>on</literal> | <literal>off</literal></syntax>
102
c76a257f3fd4 The directive name is now automatically printed in <default> and <syntax>.
Ruslan Ermilov <ru@nginx.com>
parents: 98
diff changeset
265 <default>off</default>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
266 <context>http</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
267 <context>server</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
268 <context>location</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
269
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
270 <para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
271 Determines whether nginx should save the entire client request body
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
272 in a single buffer.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
273 The directive is recommended when using the
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
274 <var>$request_body</var>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
275 variable, to save the number of copy operations involved.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
276 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
277
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
278 </directive>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
279
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
280
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
281 <directive name="client_body_temp_path">
102
c76a257f3fd4 The directive name is now automatically printed in <default> and <syntax>.
Ruslan Ermilov <ru@nginx.com>
parents: 98
diff changeset
282 <syntax>
364
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 318
diff changeset
283 <value>path</value>
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 318
diff changeset
284 [<value>level1</value>
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 318
diff changeset
285 [<value>level2</value>
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 318
diff changeset
286 [<value>level3</value>]]]</syntax>
102
c76a257f3fd4 The directive name is now automatically printed in <default> and <syntax>.
Ruslan Ermilov <ru@nginx.com>
parents: 98
diff changeset
287 <default>client_body_temp</default>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
288 <context>http</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
289 <context>server</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
290 <context>location</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
291
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
292 <para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
293 Defines a directory for storing temporary files holding client request bodies.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
294 Up to three-level subdirectory hierarchy can be used underneath the specified
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
295 directory.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
296 For example, in the following configuration
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
297 <example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
298 client_body_temp_path /spool/nginx/client_temp 1 2;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
299 </example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
300 a temporary file might look like this:
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
301 <example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
302 /spool/nginx/client_temp/7/45/00000123457
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
303 </example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
304 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
305
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
306 </directive>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
307
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
308
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
309 <directive name="client_body_timeout">
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
310 <syntax><value>time</value></syntax>
102
c76a257f3fd4 The directive name is now automatically printed in <default> and <syntax>.
Ruslan Ermilov <ru@nginx.com>
parents: 98
diff changeset
311 <default>60s</default>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
312 <context>http</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
313 <context>server</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
314 <context>location</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
315
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
316 <para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
317 Defines a timeout for reading client request body.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
318 A timeout is only set between two successive read operations,
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
319 not for the transmission of the whole request body.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
320 If a client does not transmit anything within this time,
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
321 the client error
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
322 <http-status code="408" text="Request Time-out"/>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
323 is returned.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
324 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
325
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
326 </directive>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
327
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
328
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
329 <directive name="client_header_buffer_size">
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
330 <syntax><value>size</value></syntax>
102
c76a257f3fd4 The directive name is now automatically printed in <default> and <syntax>.
Ruslan Ermilov <ru@nginx.com>
parents: 98
diff changeset
331 <default>1k</default>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
332 <context>http</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
333 <context>server</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
334
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
335 <para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
336 Sets buffer size for reading client request header.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
337 For most requests, a buffer of 1K bytes is enough.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
338 However, if a request includes long cookies, or comes from a WAP client,
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
339 it may not fit into 1K.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
340 If a request line, or a request header field do not fit entirely into
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
341 this buffer then larger buffers are allocated, configured by the
106
56457a474903 If text of the link is not provided, the @id is used.
Ruslan Ermilov <ru@nginx.com>
parents: 102
diff changeset
342 <link id="large_client_header_buffers"/>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
343 directive.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
344 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
345
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
346 </directive>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
347
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
348
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
349 <directive name="client_header_timeout">
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
350 <syntax><value>time</value></syntax>
102
c76a257f3fd4 The directive name is now automatically printed in <default> and <syntax>.
Ruslan Ermilov <ru@nginx.com>
parents: 98
diff changeset
351 <default>60s</default>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
352 <context>http</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
353 <context>server</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
354
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
355 <para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
356 Defines a timeout for reading client request header.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
357 If a client does not transmit the entire header within this time,
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
358 the client error
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
359 <http-status code="408" text="Request Time-out"/>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
360 is returned.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
361 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
362
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
363 </directive>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
364
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
365
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
366 <directive name="client_max_body_size">
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
367 <syntax><value>size</value></syntax>
102
c76a257f3fd4 The directive name is now automatically printed in <default> and <syntax>.
Ruslan Ermilov <ru@nginx.com>
parents: 98
diff changeset
368 <default>1m</default>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
369 <context>http</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
370 <context>server</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
371 <context>location</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
372
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
373 <para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
374 Sets the maximum allowed size of the client request body,
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
375 specified in the
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
376 <header>Content-Length</header>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
377 request header field.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
378 If it exceeds the configured value, the client error
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
379 <http-status code="413" text="Request Entity Too Large"/>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
380 is returned.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
381 Please be aware that
237
48a5c2083270 For now, commented out broken link to /web/upload.html.
Ruslan Ermilov <ru@nginx.com>
parents: 236
diff changeset
382 <!--link doc="/web/upload.xml"-->browsers cannot correctly display
48a5c2083270 For now, commented out broken link to /web/upload.html.
Ruslan Ermilov <ru@nginx.com>
parents: 236
diff changeset
383 this error<!--/link-->.
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
384 Setting <value>size</value> to 0 disables client
65
f122a777a6de - Use of $document_root and $realpath_root in "alias" is prohibited.
Ruslan Ermilov <ru@nginx.com>
parents: 57
diff changeset
385 request body size checking.
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
386 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
387
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
388 </directive>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
389
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
390
161
ec980064d576 Documented the "connection_pool_size" and "request_pool_size" directives.
Ruslan Ermilov <ru@nginx.com>
parents: 160
diff changeset
391 <directive name="connection_pool_size">
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
392 <syntax><value>size</value></syntax>
161
ec980064d576 Documented the "connection_pool_size" and "request_pool_size" directives.
Ruslan Ermilov <ru@nginx.com>
parents: 160
diff changeset
393 <default>256</default>
ec980064d576 Documented the "connection_pool_size" and "request_pool_size" directives.
Ruslan Ermilov <ru@nginx.com>
parents: 160
diff changeset
394 <context>http</context>
ec980064d576 Documented the "connection_pool_size" and "request_pool_size" directives.
Ruslan Ermilov <ru@nginx.com>
parents: 160
diff changeset
395 <context>server</context>
ec980064d576 Documented the "connection_pool_size" and "request_pool_size" directives.
Ruslan Ermilov <ru@nginx.com>
parents: 160
diff changeset
396
ec980064d576 Documented the "connection_pool_size" and "request_pool_size" directives.
Ruslan Ermilov <ru@nginx.com>
parents: 160
diff changeset
397 <para>
ec980064d576 Documented the "connection_pool_size" and "request_pool_size" directives.
Ruslan Ermilov <ru@nginx.com>
parents: 160
diff changeset
398 Allows to fine tune per-connection memory allocations.
ec980064d576 Documented the "connection_pool_size" and "request_pool_size" directives.
Ruslan Ermilov <ru@nginx.com>
parents: 160
diff changeset
399 This directive has minimal impact on performance,
ec980064d576 Documented the "connection_pool_size" and "request_pool_size" directives.
Ruslan Ermilov <ru@nginx.com>
parents: 160
diff changeset
400 and should not generally be used.
ec980064d576 Documented the "connection_pool_size" and "request_pool_size" directives.
Ruslan Ermilov <ru@nginx.com>
parents: 160
diff changeset
401 </para>
ec980064d576 Documented the "connection_pool_size" and "request_pool_size" directives.
Ruslan Ermilov <ru@nginx.com>
parents: 160
diff changeset
402
ec980064d576 Documented the "connection_pool_size" and "request_pool_size" directives.
Ruslan Ermilov <ru@nginx.com>
parents: 160
diff changeset
403 </directive>
ec980064d576 Documented the "connection_pool_size" and "request_pool_size" directives.
Ruslan Ermilov <ru@nginx.com>
parents: 160
diff changeset
404
ec980064d576 Documented the "connection_pool_size" and "request_pool_size" directives.
Ruslan Ermilov <ru@nginx.com>
parents: 160
diff changeset
405
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
406 <directive name="default_type">
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
407 <syntax><value>mime-type</value></syntax>
102
c76a257f3fd4 The directive name is now automatically printed in <default> and <syntax>.
Ruslan Ermilov <ru@nginx.com>
parents: 98
diff changeset
408 <default>text/plain</default>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
409 <context>http</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
410 <context>server</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
411 <context>location</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
412
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
413 <para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
414 Defines a default MIME-type of a response.
106
56457a474903 If text of the link is not provided, the @id is used.
Ruslan Ermilov <ru@nginx.com>
parents: 102
diff changeset
415 See also the <link id="types"/> directive.
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
416 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
417
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
418 </directive>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
419
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
420
171
6eeaa9e1f3b5 Made "appeared-in" an element, and added support for
Ruslan Ermilov <ru@nginx.com>
parents: 169
diff changeset
421 <directive name="directio">
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
422 <syntax><value>size</value> | <literal>off</literal></syntax>
102
c76a257f3fd4 The directive name is now automatically printed in <default> and <syntax>.
Ruslan Ermilov <ru@nginx.com>
parents: 98
diff changeset
423 <default>off</default>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
424 <context>http</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
425 <context>server</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
426 <context>location</context>
171
6eeaa9e1f3b5 Made "appeared-in" an element, and added support for
Ruslan Ermilov <ru@nginx.com>
parents: 169
diff changeset
427 <appeared-in>0.7.7</appeared-in>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
428
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
429 <para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
430 Enables the use of
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
431 the <c-def>O_DIRECT</c-def> flag (FreeBSD, Linux),
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
432 the <c-def>F_NOCACHE</c-def> flag (Mac OS X),
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
433 or the <c-func>directio</c-func> function (Solaris),
236
9ba4f5333a56 Fixed off-by-one error introduced during an initial translation into English.
Ruslan Ermilov <ru@nginx.com>
parents: 235
diff changeset
434 when reading files that are larger than or equal to
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
435 the specified <value>size</value>.
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
436 It automatically disables (0.7.15) the use of
106
56457a474903 If text of the link is not provided, the @id is used.
Ruslan Ermilov <ru@nginx.com>
parents: 102
diff changeset
437 <link id="sendfile"/>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
438 for a given request.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
439 It could be useful for serving large files:
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
440 <example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
441 directio 4m;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
442 </example>
106
56457a474903 If text of the link is not provided, the @id is used.
Ruslan Ermilov <ru@nginx.com>
parents: 102
diff changeset
443 or when using <link id="aio"/> on Linux.
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
444 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
445
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
446 </directive>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
447
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
448
171
6eeaa9e1f3b5 Made "appeared-in" an element, and added support for
Ruslan Ermilov <ru@nginx.com>
parents: 169
diff changeset
449 <directive name="directio_alignment">
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
450 <syntax><value>size</value></syntax>
102
c76a257f3fd4 The directive name is now automatically printed in <default> and <syntax>.
Ruslan Ermilov <ru@nginx.com>
parents: 98
diff changeset
451 <default>512</default>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
452 <context>http</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
453 <context>server</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
454 <context>location</context>
171
6eeaa9e1f3b5 Made "appeared-in" an element, and added support for
Ruslan Ermilov <ru@nginx.com>
parents: 169
diff changeset
455 <appeared-in>0.8.11</appeared-in>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
456
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
457 <para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
458 Sets an alignment for
106
56457a474903 If text of the link is not provided, the @id is used.
Ruslan Ermilov <ru@nginx.com>
parents: 102
diff changeset
459 <link id="directio"/>.
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
460 In most cases, a 512-byte alignment is enough, however, when
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
461 using XFS under Linux, it needs to be increased to 4K.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
462 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
463
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
464 </directive>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
465
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
466
418
2638f67205ee Documented the disable_symlinks directive.
Ruslan Ermilov <ru@nginx.com>
parents: 406
diff changeset
467 <directive name="disable_symlinks">
436
3a9f39341c7c - Documented the "from" parameter of the "disable_symlinks" directive,
Ruslan Ermilov <ru@nginx.com>
parents: 429
diff changeset
468 <syntax><literal>off</literal></syntax>
418
2638f67205ee Documented the disable_symlinks directive.
Ruslan Ermilov <ru@nginx.com>
parents: 406
diff changeset
469 <syntax>
2638f67205ee Documented the disable_symlinks directive.
Ruslan Ermilov <ru@nginx.com>
parents: 406
diff changeset
470 <literal>on</literal> |
436
3a9f39341c7c - Documented the "from" parameter of the "disable_symlinks" directive,
Ruslan Ermilov <ru@nginx.com>
parents: 429
diff changeset
471 <literal>if_not_owner</literal>
438
b27974b92a58 - corrected the description of the from= parameter of the
Ruslan Ermilov <ru@nginx.com>
parents: 436
diff changeset
472 [<literal>from</literal>=<value>part</value>]</syntax>
418
2638f67205ee Documented the disable_symlinks directive.
Ruslan Ermilov <ru@nginx.com>
parents: 406
diff changeset
473 <default>off</default>
2638f67205ee Documented the disable_symlinks directive.
Ruslan Ermilov <ru@nginx.com>
parents: 406
diff changeset
474 <context>http</context>
2638f67205ee Documented the disable_symlinks directive.
Ruslan Ermilov <ru@nginx.com>
parents: 406
diff changeset
475 <context>server</context>
2638f67205ee Documented the disable_symlinks directive.
Ruslan Ermilov <ru@nginx.com>
parents: 406
diff changeset
476 <context>location</context>
2638f67205ee Documented the disable_symlinks directive.
Ruslan Ermilov <ru@nginx.com>
parents: 406
diff changeset
477 <appeared-in>1.1.15</appeared-in>
2638f67205ee Documented the disable_symlinks directive.
Ruslan Ermilov <ru@nginx.com>
parents: 406
diff changeset
478
2638f67205ee Documented the disable_symlinks directive.
Ruslan Ermilov <ru@nginx.com>
parents: 406
diff changeset
479 <para>
436
3a9f39341c7c - Documented the "from" parameter of the "disable_symlinks" directive,
Ruslan Ermilov <ru@nginx.com>
parents: 429
diff changeset
480 Determines how symbolic links should be treated when opening files:
418
2638f67205ee Documented the disable_symlinks directive.
Ruslan Ermilov <ru@nginx.com>
parents: 406
diff changeset
481 <list type="tag">
2638f67205ee Documented the disable_symlinks directive.
Ruslan Ermilov <ru@nginx.com>
parents: 406
diff changeset
482
2638f67205ee Documented the disable_symlinks directive.
Ruslan Ermilov <ru@nginx.com>
parents: 406
diff changeset
483 <tag-name><literal>off</literal></tag-name>
2638f67205ee Documented the disable_symlinks directive.
Ruslan Ermilov <ru@nginx.com>
parents: 406
diff changeset
484 <tag-desc>
436
3a9f39341c7c - Documented the "from" parameter of the "disable_symlinks" directive,
Ruslan Ermilov <ru@nginx.com>
parents: 429
diff changeset
485 Symbolic links in the pathname are allowed and not checked.
418
2638f67205ee Documented the disable_symlinks directive.
Ruslan Ermilov <ru@nginx.com>
parents: 406
diff changeset
486 This is the default behavior.
2638f67205ee Documented the disable_symlinks directive.
Ruslan Ermilov <ru@nginx.com>
parents: 406
diff changeset
487 </tag-desc>
2638f67205ee Documented the disable_symlinks directive.
Ruslan Ermilov <ru@nginx.com>
parents: 406
diff changeset
488
2638f67205ee Documented the disable_symlinks directive.
Ruslan Ermilov <ru@nginx.com>
parents: 406
diff changeset
489 <tag-name><literal>on</literal></tag-name>
2638f67205ee Documented the disable_symlinks directive.
Ruslan Ermilov <ru@nginx.com>
parents: 406
diff changeset
490 <tag-desc>
2638f67205ee Documented the disable_symlinks directive.
Ruslan Ermilov <ru@nginx.com>
parents: 406
diff changeset
491 If any component of the pathname is a symbolic link,
2638f67205ee Documented the disable_symlinks directive.
Ruslan Ermilov <ru@nginx.com>
parents: 406
diff changeset
492 access to a file is denied.
2638f67205ee Documented the disable_symlinks directive.
Ruslan Ermilov <ru@nginx.com>
parents: 406
diff changeset
493 </tag-desc>
2638f67205ee Documented the disable_symlinks directive.
Ruslan Ermilov <ru@nginx.com>
parents: 406
diff changeset
494
2638f67205ee Documented the disable_symlinks directive.
Ruslan Ermilov <ru@nginx.com>
parents: 406
diff changeset
495 <tag-name><literal>if_not_owner</literal></tag-name>
2638f67205ee Documented the disable_symlinks directive.
Ruslan Ermilov <ru@nginx.com>
parents: 406
diff changeset
496 <tag-desc>
2638f67205ee Documented the disable_symlinks directive.
Ruslan Ermilov <ru@nginx.com>
parents: 406
diff changeset
497 Access to a file is denied if any component of the pathname
2638f67205ee Documented the disable_symlinks directive.
Ruslan Ermilov <ru@nginx.com>
parents: 406
diff changeset
498 is a symbolic link, and the link and object that the link
2638f67205ee Documented the disable_symlinks directive.
Ruslan Ermilov <ru@nginx.com>
parents: 406
diff changeset
499 points to have different owners.
2638f67205ee Documented the disable_symlinks directive.
Ruslan Ermilov <ru@nginx.com>
parents: 406
diff changeset
500 </tag-desc>
2638f67205ee Documented the disable_symlinks directive.
Ruslan Ermilov <ru@nginx.com>
parents: 406
diff changeset
501
438
b27974b92a58 - corrected the description of the from= parameter of the
Ruslan Ermilov <ru@nginx.com>
parents: 436
diff changeset
502 <tag-name><literal>from</literal>=<value>part</value></tag-name>
436
3a9f39341c7c - Documented the "from" parameter of the "disable_symlinks" directive,
Ruslan Ermilov <ru@nginx.com>
parents: 429
diff changeset
503 <tag-desc>
3a9f39341c7c - Documented the "from" parameter of the "disable_symlinks" directive,
Ruslan Ermilov <ru@nginx.com>
parents: 429
diff changeset
504 When checking symbolic links
3a9f39341c7c - Documented the "from" parameter of the "disable_symlinks" directive,
Ruslan Ermilov <ru@nginx.com>
parents: 429
diff changeset
505 (parameters <literal>on</literal> and <literal>if_not_owner</literal>),
438
b27974b92a58 - corrected the description of the from= parameter of the
Ruslan Ermilov <ru@nginx.com>
parents: 436
diff changeset
506 all components of the pathname are normally checked.
b27974b92a58 - corrected the description of the from= parameter of the
Ruslan Ermilov <ru@nginx.com>
parents: 436
diff changeset
507 Checking of symbolic links in the initial part of the pathname
b27974b92a58 - corrected the description of the from= parameter of the
Ruslan Ermilov <ru@nginx.com>
parents: 436
diff changeset
508 may be avoided by also specifying the
b27974b92a58 - corrected the description of the from= parameter of the
Ruslan Ermilov <ru@nginx.com>
parents: 436
diff changeset
509 <literal>from</literal>=<value>part</value> parameter.
b27974b92a58 - corrected the description of the from= parameter of the
Ruslan Ermilov <ru@nginx.com>
parents: 436
diff changeset
510 In this case, symbolic links are checked only from
b27974b92a58 - corrected the description of the from= parameter of the
Ruslan Ermilov <ru@nginx.com>
parents: 436
diff changeset
511 the component of the pathname following the specified initial part.
b27974b92a58 - corrected the description of the from= parameter of the
Ruslan Ermilov <ru@nginx.com>
parents: 436
diff changeset
512 If a value is not an initial part of the checked pathname, the whole
436
3a9f39341c7c - Documented the "from" parameter of the "disable_symlinks" directive,
Ruslan Ermilov <ru@nginx.com>
parents: 429
diff changeset
513 pathname is checked as if this parameter was not specified at all.
438
b27974b92a58 - corrected the description of the from= parameter of the
Ruslan Ermilov <ru@nginx.com>
parents: 436
diff changeset
514 If a value fully matches the file name,
b27974b92a58 - corrected the description of the from= parameter of the
Ruslan Ermilov <ru@nginx.com>
parents: 436
diff changeset
515 symbolic links are not checked.
b27974b92a58 - corrected the description of the from= parameter of the
Ruslan Ermilov <ru@nginx.com>
parents: 436
diff changeset
516 The parameter value can contain variables.
436
3a9f39341c7c - Documented the "from" parameter of the "disable_symlinks" directive,
Ruslan Ermilov <ru@nginx.com>
parents: 429
diff changeset
517 </tag-desc>
3a9f39341c7c - Documented the "from" parameter of the "disable_symlinks" directive,
Ruslan Ermilov <ru@nginx.com>
parents: 429
diff changeset
518
418
2638f67205ee Documented the disable_symlinks directive.
Ruslan Ermilov <ru@nginx.com>
parents: 406
diff changeset
519 </list>
2638f67205ee Documented the disable_symlinks directive.
Ruslan Ermilov <ru@nginx.com>
parents: 406
diff changeset
520 </para>
2638f67205ee Documented the disable_symlinks directive.
Ruslan Ermilov <ru@nginx.com>
parents: 406
diff changeset
521
2638f67205ee Documented the disable_symlinks directive.
Ruslan Ermilov <ru@nginx.com>
parents: 406
diff changeset
522 <para>
436
3a9f39341c7c - Documented the "from" parameter of the "disable_symlinks" directive,
Ruslan Ermilov <ru@nginx.com>
parents: 429
diff changeset
523 Example:
3a9f39341c7c - Documented the "from" parameter of the "disable_symlinks" directive,
Ruslan Ermilov <ru@nginx.com>
parents: 429
diff changeset
524 <example>
3a9f39341c7c - Documented the "from" parameter of the "disable_symlinks" directive,
Ruslan Ermilov <ru@nginx.com>
parents: 429
diff changeset
525 disable_symlinks on from=$document_root;
3a9f39341c7c - Documented the "from" parameter of the "disable_symlinks" directive,
Ruslan Ermilov <ru@nginx.com>
parents: 429
diff changeset
526 </example>
3a9f39341c7c - Documented the "from" parameter of the "disable_symlinks" directive,
Ruslan Ermilov <ru@nginx.com>
parents: 429
diff changeset
527 </para>
3a9f39341c7c - Documented the "from" parameter of the "disable_symlinks" directive,
Ruslan Ermilov <ru@nginx.com>
parents: 429
diff changeset
528
3a9f39341c7c - Documented the "from" parameter of the "disable_symlinks" directive,
Ruslan Ermilov <ru@nginx.com>
parents: 429
diff changeset
529 <para>
418
2638f67205ee Documented the disable_symlinks directive.
Ruslan Ermilov <ru@nginx.com>
parents: 406
diff changeset
530 This directive is only available on systems that have the
2638f67205ee Documented the disable_symlinks directive.
Ruslan Ermilov <ru@nginx.com>
parents: 406
diff changeset
531 <c-func>openat</c-func> and <c-func>fstatat</c-func> interfaces.
2638f67205ee Documented the disable_symlinks directive.
Ruslan Ermilov <ru@nginx.com>
parents: 406
diff changeset
532 This includes modern versions of FreeBSD, Linux, and Solaris.
2638f67205ee Documented the disable_symlinks directive.
Ruslan Ermilov <ru@nginx.com>
parents: 406
diff changeset
533 </para>
2638f67205ee Documented the disable_symlinks directive.
Ruslan Ermilov <ru@nginx.com>
parents: 406
diff changeset
534
2638f67205ee Documented the disable_symlinks directive.
Ruslan Ermilov <ru@nginx.com>
parents: 406
diff changeset
535 <para>
2638f67205ee Documented the disable_symlinks directive.
Ruslan Ermilov <ru@nginx.com>
parents: 406
diff changeset
536 Parameters <literal>on</literal> and <literal>if_not_owner</literal>
2638f67205ee Documented the disable_symlinks directive.
Ruslan Ermilov <ru@nginx.com>
parents: 406
diff changeset
537 add a processing overhead.
436
3a9f39341c7c - Documented the "from" parameter of the "disable_symlinks" directive,
Ruslan Ermilov <ru@nginx.com>
parents: 429
diff changeset
538 <note>
3a9f39341c7c - Documented the "from" parameter of the "disable_symlinks" directive,
Ruslan Ermilov <ru@nginx.com>
parents: 429
diff changeset
539 On systems that do not support opening directories for search only,
438
b27974b92a58 - corrected the description of the from= parameter of the
Ruslan Ermilov <ru@nginx.com>
parents: 436
diff changeset
540 the use of these parameters requires that worker processes
b27974b92a58 - corrected the description of the from= parameter of the
Ruslan Ermilov <ru@nginx.com>
parents: 436
diff changeset
541 have read permissions for all checked directories.
b27974b92a58 - corrected the description of the from= parameter of the
Ruslan Ermilov <ru@nginx.com>
parents: 436
diff changeset
542 </note>
b27974b92a58 - corrected the description of the from= parameter of the
Ruslan Ermilov <ru@nginx.com>
parents: 436
diff changeset
543 </para>
b27974b92a58 - corrected the description of the from= parameter of the
Ruslan Ermilov <ru@nginx.com>
parents: 436
diff changeset
544
b27974b92a58 - corrected the description of the from= parameter of the
Ruslan Ermilov <ru@nginx.com>
parents: 436
diff changeset
545 <para>
b27974b92a58 - corrected the description of the from= parameter of the
Ruslan Ermilov <ru@nginx.com>
parents: 436
diff changeset
546 <note>
b27974b92a58 - corrected the description of the from= parameter of the
Ruslan Ermilov <ru@nginx.com>
parents: 436
diff changeset
547 The
b27974b92a58 - corrected the description of the from= parameter of the
Ruslan Ermilov <ru@nginx.com>
parents: 436
diff changeset
548 <link doc="ngx_http_autoindex_module.xml">ngx_http_autoindex_module</link>,
b27974b92a58 - corrected the description of the from= parameter of the
Ruslan Ermilov <ru@nginx.com>
parents: 436
diff changeset
549 <link doc="ngx_http_random_index_module.xml">ngx_http_random_index_module</link>,
477
c5680571ec09 Unnecessary extensions removed from links.
Andrey Belov <defan@nginx.com>
parents: 476
diff changeset
550 and <link doc="ngx_http_dav_module.xml">ngx_http_dav_module</link>
438
b27974b92a58 - corrected the description of the from= parameter of the
Ruslan Ermilov <ru@nginx.com>
parents: 436
diff changeset
551 modules currently ignore this directive.
436
3a9f39341c7c - Documented the "from" parameter of the "disable_symlinks" directive,
Ruslan Ermilov <ru@nginx.com>
parents: 429
diff changeset
552 </note>
418
2638f67205ee Documented the disable_symlinks directive.
Ruslan Ermilov <ru@nginx.com>
parents: 406
diff changeset
553 </para>
2638f67205ee Documented the disable_symlinks directive.
Ruslan Ermilov <ru@nginx.com>
parents: 406
diff changeset
554
2638f67205ee Documented the disable_symlinks directive.
Ruslan Ermilov <ru@nginx.com>
parents: 406
diff changeset
555 </directive>
2638f67205ee Documented the disable_symlinks directive.
Ruslan Ermilov <ru@nginx.com>
parents: 406
diff changeset
556
2638f67205ee Documented the disable_symlinks directive.
Ruslan Ermilov <ru@nginx.com>
parents: 406
diff changeset
557
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
558 <directive name="error_page">
102
c76a257f3fd4 The directive name is now automatically printed in <default> and <syntax>.
Ruslan Ermilov <ru@nginx.com>
parents: 98
diff changeset
559 <syntax>
364
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 318
diff changeset
560 <value>code</value> ...
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 318
diff changeset
561 [<literal>=</literal>[<value>response</value>]]
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 318
diff changeset
562 <value>uri</value></syntax>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
563 <default/>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
564 <context>http</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
565 <context>server</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
566 <context>location</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
567 <context>if in location</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
568
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
569 <para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
570 Defines the URI that will be shown for the specified errors.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
571 These directives are inherited from the previous level if and
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
572 only if there are no
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
573 <literal>error_page</literal>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
574 directives on
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
575 the current level.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
576 A URI value can contain variables.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
577 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
578
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
579 <para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
580 Example:
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
581 <example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
582 error_page 404 /404.html;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
583 error_page 502 503 504 /50x.html;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
584 error_page 403 http://example.com/forbidden.html;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
585 </example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
586 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
587
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
588 <para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
589 Furthermore, it is possible to change the response code to another, for example:
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
590 <example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
591 error_page 404 =200 /empty.gif;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
592 </example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
593 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
594
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
595 <para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
596 If an error response is processed by a proxied server, or a FastCGI server,
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
597 and the server may return different response codes (e.g., 200, 302, 401
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
598 or 404), it is possible to respond with a returned code:
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
599 <example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
600 error_page 404 = /404.php;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
601 </example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
602 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
603
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
604 <para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
605 If there is no need to change URI during redirection it is possible to redirect
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
606 error processing into a named location:
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
607 <example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
608 location / {
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
609 error_page 404 = @fallback;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
610 }
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
611
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
612 location @fallback {
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
613 proxy_pass http://backend;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
614 }
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
615 </example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
616 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
617
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
618 </directive>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
619
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
620
576
cac22cc79afd Documented the "etag" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 566
diff changeset
621 <directive name="etag">
cac22cc79afd Documented the "etag" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 566
diff changeset
622 <syntax><literal>on</literal> | <literal>off</literal></syntax>
cac22cc79afd Documented the "etag" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 566
diff changeset
623 <default>on</default>
cac22cc79afd Documented the "etag" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 566
diff changeset
624 <context>http</context>
cac22cc79afd Documented the "etag" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 566
diff changeset
625 <context>server</context>
cac22cc79afd Documented the "etag" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 566
diff changeset
626 <context>location</context>
cac22cc79afd Documented the "etag" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 566
diff changeset
627 <appeared-in>1.3.3</appeared-in>
cac22cc79afd Documented the "etag" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 566
diff changeset
628
cac22cc79afd Documented the "etag" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 566
diff changeset
629 <para>
cac22cc79afd Documented the "etag" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 566
diff changeset
630 Enables or disables automatic generation of the <header>ETag</header>
cac22cc79afd Documented the "etag" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 566
diff changeset
631 response header field for static resources.
cac22cc79afd Documented the "etag" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 566
diff changeset
632 </para>
cac22cc79afd Documented the "etag" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 566
diff changeset
633
cac22cc79afd Documented the "etag" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 566
diff changeset
634 </directive>
cac22cc79afd Documented the "etag" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 566
diff changeset
635
cac22cc79afd Documented the "etag" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 566
diff changeset
636
171
6eeaa9e1f3b5 Made "appeared-in" an element, and added support for
Ruslan Ermilov <ru@nginx.com>
parents: 169
diff changeset
637 <directive name="if_modified_since">
102
c76a257f3fd4 The directive name is now automatically printed in <default> and <syntax>.
Ruslan Ermilov <ru@nginx.com>
parents: 98
diff changeset
638 <syntax>
364
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 318
diff changeset
639 <literal>off</literal> |
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 318
diff changeset
640 <literal>exact</literal> |
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 318
diff changeset
641 <literal>before</literal></syntax>
102
c76a257f3fd4 The directive name is now automatically printed in <default> and <syntax>.
Ruslan Ermilov <ru@nginx.com>
parents: 98
diff changeset
642 <default>exact</default>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
643 <context>http</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
644 <context>server</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
645 <context>location</context>
171
6eeaa9e1f3b5 Made "appeared-in" an element, and added support for
Ruslan Ermilov <ru@nginx.com>
parents: 169
diff changeset
646 <appeared-in>0.7.24</appeared-in>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
647
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
648 <para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
649 Specifies how to compare modification time of a response
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
650 with the time in the
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
651 <header>If-Modified-Since</header>
235
6d8356490215 Consistently call header fields as such.
Ruslan Ermilov <ru@nginx.com>
parents: 234
diff changeset
652 request header field:
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
653
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
654 <list type="tag">
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
655
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
656 <tag-name><literal>off</literal></tag-name>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
657 <tag-desc>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
658 the
235
6d8356490215 Consistently call header fields as such.
Ruslan Ermilov <ru@nginx.com>
parents: 234
diff changeset
659 <header>If-Modified-Since</header> request header field is ignored (0.7.34);
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
660 </tag-desc>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
661
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
662 <tag-name><literal>exact</literal></tag-name>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
663 <tag-desc>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
664 exact match;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
665 </tag-desc>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
666
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
667 <tag-name><literal>before</literal></tag-name>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
668 <tag-desc>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
669 modification time of a response is
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
670 less than or equal to the time in the <header>If-Modified-Since</header>
235
6d8356490215 Consistently call header fields as such.
Ruslan Ermilov <ru@nginx.com>
parents: 234
diff changeset
671 request header field.
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
672 </tag-desc>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
673
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
674 </list>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
675 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
676
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
677 </directive>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
678
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
679
152
5a35535f7cdf Documented the "ignore_invalid_headers" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 148
diff changeset
680 <directive name="ignore_invalid_headers">
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
681 <syntax><literal>on</literal> | <literal>off</literal></syntax>
152
5a35535f7cdf Documented the "ignore_invalid_headers" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 148
diff changeset
682 <default>on</default>
5a35535f7cdf Documented the "ignore_invalid_headers" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 148
diff changeset
683 <context>http</context>
5a35535f7cdf Documented the "ignore_invalid_headers" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 148
diff changeset
684 <context>server</context>
5a35535f7cdf Documented the "ignore_invalid_headers" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 148
diff changeset
685
5a35535f7cdf Documented the "ignore_invalid_headers" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 148
diff changeset
686 <para>
235
6d8356490215 Consistently call header fields as such.
Ruslan Ermilov <ru@nginx.com>
parents: 234
diff changeset
687 Controls whether header fields with invalid names should be ignored.
252
6f710464be38 Applied nitpicking by Maxim Dounin, translated into English.
Ruslan Ermilov <ru@nginx.com>
parents: 246
diff changeset
688 Valid names are composed of English letters, digits, hyphens, and possibly
152
5a35535f7cdf Documented the "ignore_invalid_headers" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 148
diff changeset
689 underscores (as controlled by the <link id="underscores_in_headers"/>
5a35535f7cdf Documented the "ignore_invalid_headers" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 148
diff changeset
690 directive).
5a35535f7cdf Documented the "ignore_invalid_headers" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 148
diff changeset
691 </para>
5a35535f7cdf Documented the "ignore_invalid_headers" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 148
diff changeset
692
426
1d6dc85ed324 Specifying "ignore_invalid_headers" or "underscores_in_headers" on the
Ruslan Ermilov <ru@nginx.com>
parents: 419
diff changeset
693 <para>
1d6dc85ed324 Specifying "ignore_invalid_headers" or "underscores_in_headers" on the
Ruslan Ermilov <ru@nginx.com>
parents: 419
diff changeset
694 A directive can be specified on the <link id="server"/> level
1d6dc85ed324 Specifying "ignore_invalid_headers" or "underscores_in_headers" on the
Ruslan Ermilov <ru@nginx.com>
parents: 419
diff changeset
695 in a default server.
1d6dc85ed324 Specifying "ignore_invalid_headers" or "underscores_in_headers" on the
Ruslan Ermilov <ru@nginx.com>
parents: 419
diff changeset
696 In this case, its value will cover all virtual servers
1d6dc85ed324 Specifying "ignore_invalid_headers" or "underscores_in_headers" on the
Ruslan Ermilov <ru@nginx.com>
parents: 419
diff changeset
697 listening on the same address and port.
1d6dc85ed324 Specifying "ignore_invalid_headers" or "underscores_in_headers" on the
Ruslan Ermilov <ru@nginx.com>
parents: 419
diff changeset
698 </para>
1d6dc85ed324 Specifying "ignore_invalid_headers" or "underscores_in_headers" on the
Ruslan Ermilov <ru@nginx.com>
parents: 419
diff changeset
699
152
5a35535f7cdf Documented the "ignore_invalid_headers" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 148
diff changeset
700 </directive>
5a35535f7cdf Documented the "ignore_invalid_headers" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 148
diff changeset
701
5a35535f7cdf Documented the "ignore_invalid_headers" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 148
diff changeset
702
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
703 <directive name="internal">
102
c76a257f3fd4 The directive name is now automatically printed in <default> and <syntax>.
Ruslan Ermilov <ru@nginx.com>
parents: 98
diff changeset
704 <syntax/>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
705 <default/>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
706 <context>location</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
707
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
708 <para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
709 Specifies that a given location can only be used for internal requests.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
710 For external requests, the client error
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
711 <http-status code="404" text="Not Found"/>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
712 is returned.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
713 Internal requests are the following:
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
714
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
715 <list type="bullet">
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
716
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
717 <listitem>
429
2b9507b2cdf3 List all sources of internal requests.
Ruslan Ermilov <ru@nginx.com>
parents: 426
diff changeset
718 requests redirected by the
2b9507b2cdf3 List all sources of internal requests.
Ruslan Ermilov <ru@nginx.com>
parents: 426
diff changeset
719 <link id="error_page"/>,
2b9507b2cdf3 List all sources of internal requests.
Ruslan Ermilov <ru@nginx.com>
parents: 426
diff changeset
720 <link doc="ngx_http_index_module.xml" id="index"/>,
2b9507b2cdf3 List all sources of internal requests.
Ruslan Ermilov <ru@nginx.com>
parents: 426
diff changeset
721 <link doc="ngx_http_random_index_module.xml" id="random_index"/>, and
2b9507b2cdf3 List all sources of internal requests.
Ruslan Ermilov <ru@nginx.com>
parents: 426
diff changeset
722 <link id="try_files"/> directives;
2b9507b2cdf3 List all sources of internal requests.
Ruslan Ermilov <ru@nginx.com>
parents: 426
diff changeset
723 </listitem>
2b9507b2cdf3 List all sources of internal requests.
Ruslan Ermilov <ru@nginx.com>
parents: 426
diff changeset
724
2b9507b2cdf3 List all sources of internal requests.
Ruslan Ermilov <ru@nginx.com>
parents: 426
diff changeset
725 <listitem>
2b9507b2cdf3 List all sources of internal requests.
Ruslan Ermilov <ru@nginx.com>
parents: 426
diff changeset
726 requests redirected by the <header>X-Accel-Redirect</header>
2b9507b2cdf3 List all sources of internal requests.
Ruslan Ermilov <ru@nginx.com>
parents: 426
diff changeset
727 response header field from an upstream server;
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
728 </listitem>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
729
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
730 <listitem>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
731 subrequests formed by the
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
732 “<command>include virtual</command>”
438
b27974b92a58 - corrected the description of the from= parameter of the
Ruslan Ermilov <ru@nginx.com>
parents: 436
diff changeset
733 command of the
b27974b92a58 - corrected the description of the from= parameter of the
Ruslan Ermilov <ru@nginx.com>
parents: 436
diff changeset
734 <link doc="ngx_http_ssi_module.xml">ngx_http_ssi_module</link>
b27974b92a58 - corrected the description of the from= parameter of the
Ruslan Ermilov <ru@nginx.com>
parents: 436
diff changeset
735 module and by the
b27974b92a58 - corrected the description of the from= parameter of the
Ruslan Ermilov <ru@nginx.com>
parents: 436
diff changeset
736 <link doc="ngx_http_addition_module.xml">ngx_http_addition_module</link>
b27974b92a58 - corrected the description of the from= parameter of the
Ruslan Ermilov <ru@nginx.com>
parents: 436
diff changeset
737 module directives;
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
738 </listitem>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
739
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
740 <listitem>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
741 requests changed by the
429
2b9507b2cdf3 List all sources of internal requests.
Ruslan Ermilov <ru@nginx.com>
parents: 426
diff changeset
742 <link doc="ngx_http_rewrite_module.xml" id="rewrite"/> directive.
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
743 </listitem>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
744
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
745 </list>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
746 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
747
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
748 <para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
749 Example:
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
750 <example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
751 error_page 404 /404.html;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
752
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
753 location /404.html {
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
754 internal;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
755 }
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
756 </example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
757 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
758
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
759 </directive>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
760
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
761
176
0883fc5aabc9 Documented the "keepalive_disable" and "send_lowat" directives.
Ruslan Ermilov <ru@nginx.com>
parents: 175
diff changeset
762 <directive name="keepalive_disable">
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
763 <syntax><literal>none</literal> | <value>browser</value> ...</syntax>
467
c505c92c8658 Documented recent changes to the "keepalive_disable" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 454
diff changeset
764 <default>msie6</default>
176
0883fc5aabc9 Documented the "keepalive_disable" and "send_lowat" directives.
Ruslan Ermilov <ru@nginx.com>
parents: 175
diff changeset
765 <context>http</context>
0883fc5aabc9 Documented the "keepalive_disable" and "send_lowat" directives.
Ruslan Ermilov <ru@nginx.com>
parents: 175
diff changeset
766 <context>server</context>
0883fc5aabc9 Documented the "keepalive_disable" and "send_lowat" directives.
Ruslan Ermilov <ru@nginx.com>
parents: 175
diff changeset
767 <context>location</context>
0883fc5aabc9 Documented the "keepalive_disable" and "send_lowat" directives.
Ruslan Ermilov <ru@nginx.com>
parents: 175
diff changeset
768
0883fc5aabc9 Documented the "keepalive_disable" and "send_lowat" directives.
Ruslan Ermilov <ru@nginx.com>
parents: 175
diff changeset
769 <para>
0883fc5aabc9 Documented the "keepalive_disable" and "send_lowat" directives.
Ruslan Ermilov <ru@nginx.com>
parents: 175
diff changeset
770 Disables keep-alive connections with misbehaving browsers.
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
771 The <value>browser</value> parameters specify which
176
0883fc5aabc9 Documented the "keepalive_disable" and "send_lowat" directives.
Ruslan Ermilov <ru@nginx.com>
parents: 175
diff changeset
772 browsers will be affected.
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
773 The value <literal>msie6</literal> disables keep-alive connections
252
6f710464be38 Applied nitpicking by Maxim Dounin, translated into English.
Ruslan Ermilov <ru@nginx.com>
parents: 246
diff changeset
774 with old versions of MSIE, after seeing a POST request.
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
775 The value <literal>safari</literal> disables keep-alive connections
467
c505c92c8658 Documented recent changes to the "keepalive_disable" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 454
diff changeset
776 with Safari and Safari-like browsers on Mac OS X and Mac OS X-like
c505c92c8658 Documented recent changes to the "keepalive_disable" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 454
diff changeset
777 operating systems.
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
778 The value <literal>none</literal> enables keep-alive connections
176
0883fc5aabc9 Documented the "keepalive_disable" and "send_lowat" directives.
Ruslan Ermilov <ru@nginx.com>
parents: 175
diff changeset
779 with all browsers.
467
c505c92c8658 Documented recent changes to the "keepalive_disable" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 454
diff changeset
780 <note>
c505c92c8658 Documented recent changes to the "keepalive_disable" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 454
diff changeset
781 Prior to version 1.1.18, the value <literal>safari</literal> matched
c505c92c8658 Documented recent changes to the "keepalive_disable" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 454
diff changeset
782 all Safari and Safari-like browsers on all operating systems, and
c505c92c8658 Documented recent changes to the "keepalive_disable" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 454
diff changeset
783 keep-alive connections with them were disabled by default.
c505c92c8658 Documented recent changes to the "keepalive_disable" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 454
diff changeset
784 </note>
176
0883fc5aabc9 Documented the "keepalive_disable" and "send_lowat" directives.
Ruslan Ermilov <ru@nginx.com>
parents: 175
diff changeset
785 </para>
0883fc5aabc9 Documented the "keepalive_disable" and "send_lowat" directives.
Ruslan Ermilov <ru@nginx.com>
parents: 175
diff changeset
786
0883fc5aabc9 Documented the "keepalive_disable" and "send_lowat" directives.
Ruslan Ermilov <ru@nginx.com>
parents: 175
diff changeset
787 </directive>
0883fc5aabc9 Documented the "keepalive_disable" and "send_lowat" directives.
Ruslan Ermilov <ru@nginx.com>
parents: 175
diff changeset
788
0883fc5aabc9 Documented the "keepalive_disable" and "send_lowat" directives.
Ruslan Ermilov <ru@nginx.com>
parents: 175
diff changeset
789
171
6eeaa9e1f3b5 Made "appeared-in" an element, and added support for
Ruslan Ermilov <ru@nginx.com>
parents: 169
diff changeset
790 <directive name="keepalive_requests">
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
791 <syntax><value>number</value></syntax>
102
c76a257f3fd4 The directive name is now automatically printed in <default> and <syntax>.
Ruslan Ermilov <ru@nginx.com>
parents: 98
diff changeset
792 <default>100</default>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
793 <context>http</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
794 <context>server</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
795 <context>location</context>
171
6eeaa9e1f3b5 Made "appeared-in" an element, and added support for
Ruslan Ermilov <ru@nginx.com>
parents: 169
diff changeset
796 <appeared-in>0.8.0</appeared-in>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
797
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
798 <para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
799 Sets the maximum number of requests that can be
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
800 made through one keep-alive connection.
65
f122a777a6de - Use of $document_root and $realpath_root in "alias" is prohibited.
Ruslan Ermilov <ru@nginx.com>
parents: 57
diff changeset
801 After this many requests are made, the connection is closed.
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
802 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
803
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
804 </directive>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
805
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
806
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
807 <directive name="keepalive_timeout">
102
c76a257f3fd4 The directive name is now automatically printed in <default> and <syntax>.
Ruslan Ermilov <ru@nginx.com>
parents: 98
diff changeset
808 <syntax>
364
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 318
diff changeset
809 <value>timeout</value>
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 318
diff changeset
810 [<value>header_timeout</value>]</syntax>
102
c76a257f3fd4 The directive name is now automatically printed in <default> and <syntax>.
Ruslan Ermilov <ru@nginx.com>
parents: 98
diff changeset
811 <default>75s</default>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
812 <context>http</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
813 <context>server</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
814 <context>location</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
815
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
816 <para>
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
817 The first parameter sets a timeout during which a keep-alive
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
818 client connection will stay open on the server side.
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
819 The optional second parameter sets a value in the
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
820 <header>Keep-Alive: timeout=<value>time</value></header>
235
6d8356490215 Consistently call header fields as such.
Ruslan Ermilov <ru@nginx.com>
parents: 234
diff changeset
821 response header field.
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
822 Two parameters may differ.
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
823 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
824
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
825 <para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
826 The
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
827 <header>Keep-Alive: timeout=<value>time</value></header>
235
6d8356490215 Consistently call header fields as such.
Ruslan Ermilov <ru@nginx.com>
parents: 234
diff changeset
828 header field is understood by Mozilla and Konqueror.
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
829 MSIE will close keep-alive connection in about 60 seconds.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
830 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
831
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
832 </directive>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
833
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
834
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
835 <directive name="large_client_header_buffers">
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
836 <syntax><value>number</value> <value>size</value></syntax>
102
c76a257f3fd4 The directive name is now automatically printed in <default> and <syntax>.
Ruslan Ermilov <ru@nginx.com>
parents: 98
diff changeset
837 <default>4 8k</default>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
838 <context>http</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
839 <context>server</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
840
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
841 <para>
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
842 Sets the maximum <value>number</value> and <value>size</value> of
235
6d8356490215 Consistently call header fields as such.
Ruslan Ermilov <ru@nginx.com>
parents: 234
diff changeset
843 buffers used when reading large client request header.
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
844 A request line cannot exceed the size of one buffer, or the client error
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
845 <http-status code="414" text="Request-URI Too Large"/>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
846 is returned.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
847 A request header field cannot exceed the size of one buffer as well, or the
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
848 client error
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
849 <http-status code="400" text="Bad Request"/>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
850 is returned.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
851 Buffers are allocated only on demand.
65
f122a777a6de - Use of $document_root and $realpath_root in "alias" is prohibited.
Ruslan Ermilov <ru@nginx.com>
parents: 57
diff changeset
852 By default, the buffer size is equal to 8K bytes.
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
853 If after the end of request processing a connection is transitioned
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
854 into the keep-alive state, these buffers are freed.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
855 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
856
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
857 </directive>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
858
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
859
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
860 <directive name="limit_except">
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
861 <syntax block="yes"><value>method</value> ...</syntax>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
862 <default/>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
863 <context>location</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
864
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
865 <para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
866 Limits allowed HTTP methods inside a location.
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
867 The <value>method</value> parameter can be one of the following:
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
868 <literal>GET</literal>,
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
869 <literal>HEAD</literal>,
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
870 <literal>POST</literal>,
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
871 <literal>PUT</literal>,
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
872 <literal>DELETE</literal>,
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
873 <literal>MKCOL</literal>,
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
874 <literal>COPY</literal>,
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
875 <literal>MOVE</literal>,
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
876 <literal>OPTIONS</literal>,
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
877 <literal>PROPFIND</literal>,
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
878 <literal>PROPPATCH</literal>,
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
879 <literal>LOCK</literal>,
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
880 <literal>UNLOCK</literal>,
65
f122a777a6de - Use of $document_root and $realpath_root in "alias" is prohibited.
Ruslan Ermilov <ru@nginx.com>
parents: 57
diff changeset
881 or
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
882 <literal>PATCH</literal>.
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
883 Allowing the <literal>GET</literal> method also allows the
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
884 <literal>HEAD</literal> method.
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
885 Access to other methods can be limited using the
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
886 <link doc="ngx_http_access_module.xml">ngx_http_access_module</link>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
887 and
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
888 <link doc="ngx_http_auth_basic_module.xml">ngx_http_auth_basic_module</link>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
889 modules directives:
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
890 <example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
891 limit_except GET {
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
892 allow 192.168.1.0/32;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
893 deny all;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
894 }
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
895 </example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
896 Please note that this will limit access to all methods
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
897 <emphasis>except</emphasis> GET and HEAD.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
898 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
899
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
900 </directive>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
901
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
902
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
903 <directive name="limit_rate">
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
904 <syntax><value>rate</value></syntax>
102
c76a257f3fd4 The directive name is now automatically printed in <default> and <syntax>.
Ruslan Ermilov <ru@nginx.com>
parents: 98
diff changeset
905 <default>0</default>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
906 <context>http</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
907 <context>server</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
908 <context>location</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
909 <context>if in location</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
910
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
911 <para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
912 Rate limits the transmission of a response to a client.
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
913 The <value>rate</value> is specified in bytes per second.
65
f122a777a6de - Use of $document_root and $realpath_root in "alias" is prohibited.
Ruslan Ermilov <ru@nginx.com>
parents: 57
diff changeset
914 Value 0 (the default) disables rate limiting.
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
915 <!--
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
916 The smaller the rate, the more accurate will be the limitation.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
917 -->
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
918 The limit is per connection, so if a single client opens 2 connections,
65
f122a777a6de - Use of $document_root and $realpath_root in "alias" is prohibited.
Ruslan Ermilov <ru@nginx.com>
parents: 57
diff changeset
919 an overall rate will be 2x more than specified by this directive.
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
920 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
921
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
922 <para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
923 This directive is not applicable if one wants to rate limit
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
924 a group of clients on the
106
56457a474903 If text of the link is not provided, the @id is used.
Ruslan Ermilov <ru@nginx.com>
parents: 102
diff changeset
925 <link id="server"/>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
926 level.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
927 If that is the case, the desired limit can be specified in the
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
928 <var>$limit_rate</var>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
929 variable:
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
930 <example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
931 server {
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
932
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
933 if ($slow) {
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
934 set $limit_rate 4k;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
935 }
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
936
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
937 ...
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
938 }
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
939 </example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
940 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
941
506
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 503
diff changeset
942 <para>
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 503
diff changeset
943 In addition, rate limit can also be set in the
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 503
diff changeset
944 <header>X-Accel-Limit-Rate</header> response header field.
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 503
diff changeset
945 This ability can be disabled using the
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 503
diff changeset
946 <link doc="ngx_http_proxy_module.xml" id="proxy_ignore_headers"/>
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 503
diff changeset
947 and
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 503
diff changeset
948 <link doc="ngx_http_fastcgi_module.xml" id="fastcgi_ignore_headers"/>
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 503
diff changeset
949 directives.
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 503
diff changeset
950 </para>
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 503
diff changeset
951
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
952 </directive>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
953
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
954
171
6eeaa9e1f3b5 Made "appeared-in" an element, and added support for
Ruslan Ermilov <ru@nginx.com>
parents: 169
diff changeset
955 <directive name="limit_rate_after">
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
956 <syntax><value>size</value></syntax>
102
c76a257f3fd4 The directive name is now automatically printed in <default> and <syntax>.
Ruslan Ermilov <ru@nginx.com>
parents: 98
diff changeset
957 <default>0</default>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
958 <context>http</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
959 <context>server</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
960 <context>location</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
961 <context>if in location</context>
171
6eeaa9e1f3b5 Made "appeared-in" an element, and added support for
Ruslan Ermilov <ru@nginx.com>
parents: 169
diff changeset
962 <appeared-in>0.8.0</appeared-in>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
963
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
964 <para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
965 Sets the initial amount after which the further transmission
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
966 of a response to a client will be rate limited.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
967 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
968
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
969 <para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
970 Example:
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
971 <example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
972 location /flv/ {
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
973 flv;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
974 limit_rate_after 500k;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
975 limit_rate 50k;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
976 }
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
977 </example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
978 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
979
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
980 </directive>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
981
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
982
172
5e8e63f73c33 Documented "lingering_close", "lingering_time", and "lingering_timeout".
Ruslan Ermilov <ru@nginx.com>
parents: 171
diff changeset
983 <directive name="lingering_close">
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
984 <syntax>
364
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 318
diff changeset
985 <literal>off</literal> |
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 318
diff changeset
986 <literal>on</literal> |
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 318
diff changeset
987 <literal>always</literal></syntax>
172
5e8e63f73c33 Documented "lingering_close", "lingering_time", and "lingering_timeout".
Ruslan Ermilov <ru@nginx.com>
parents: 171
diff changeset
988 <default>on</default>
5e8e63f73c33 Documented "lingering_close", "lingering_time", and "lingering_timeout".
Ruslan Ermilov <ru@nginx.com>
parents: 171
diff changeset
989 <context>http</context>
5e8e63f73c33 Documented "lingering_close", "lingering_time", and "lingering_timeout".
Ruslan Ermilov <ru@nginx.com>
parents: 171
diff changeset
990 <context>server</context>
5e8e63f73c33 Documented "lingering_close", "lingering_time", and "lingering_timeout".
Ruslan Ermilov <ru@nginx.com>
parents: 171
diff changeset
991 <context>location</context>
5e8e63f73c33 Documented "lingering_close", "lingering_time", and "lingering_timeout".
Ruslan Ermilov <ru@nginx.com>
parents: 171
diff changeset
992 <appeared-in>1.1.0</appeared-in>
5e8e63f73c33 Documented "lingering_close", "lingering_time", and "lingering_timeout".
Ruslan Ermilov <ru@nginx.com>
parents: 171
diff changeset
993 <appeared-in>1.0.6</appeared-in>
5e8e63f73c33 Documented "lingering_close", "lingering_time", and "lingering_timeout".
Ruslan Ermilov <ru@nginx.com>
parents: 171
diff changeset
994
5e8e63f73c33 Documented "lingering_close", "lingering_time", and "lingering_timeout".
Ruslan Ermilov <ru@nginx.com>
parents: 171
diff changeset
995 <para>
5e8e63f73c33 Documented "lingering_close", "lingering_time", and "lingering_timeout".
Ruslan Ermilov <ru@nginx.com>
parents: 171
diff changeset
996 Controls how nginx closes client connections.
5e8e63f73c33 Documented "lingering_close", "lingering_time", and "lingering_timeout".
Ruslan Ermilov <ru@nginx.com>
parents: 171
diff changeset
997 </para>
5e8e63f73c33 Documented "lingering_close", "lingering_time", and "lingering_timeout".
Ruslan Ermilov <ru@nginx.com>
parents: 171
diff changeset
998
5e8e63f73c33 Documented "lingering_close", "lingering_time", and "lingering_timeout".
Ruslan Ermilov <ru@nginx.com>
parents: 171
diff changeset
999 <para>
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1000 The default value “<literal>on</literal>” instructs nginx to
172
5e8e63f73c33 Documented "lingering_close", "lingering_time", and "lingering_timeout".
Ruslan Ermilov <ru@nginx.com>
parents: 171
diff changeset
1001 <link id="lingering_timeout">wait for</link> and
5e8e63f73c33 Documented "lingering_close", "lingering_time", and "lingering_timeout".
Ruslan Ermilov <ru@nginx.com>
parents: 171
diff changeset
1002 <link id="lingering_time">process</link> additional data from a client
5e8e63f73c33 Documented "lingering_close", "lingering_time", and "lingering_timeout".
Ruslan Ermilov <ru@nginx.com>
parents: 171
diff changeset
1003 before fully closing a connection, but only
5e8e63f73c33 Documented "lingering_close", "lingering_time", and "lingering_timeout".
Ruslan Ermilov <ru@nginx.com>
parents: 171
diff changeset
1004 if heuristics suggests that a client may be sending more data.
5e8e63f73c33 Documented "lingering_close", "lingering_time", and "lingering_timeout".
Ruslan Ermilov <ru@nginx.com>
parents: 171
diff changeset
1005 </para>
5e8e63f73c33 Documented "lingering_close", "lingering_time", and "lingering_timeout".
Ruslan Ermilov <ru@nginx.com>
parents: 171
diff changeset
1006
5e8e63f73c33 Documented "lingering_close", "lingering_time", and "lingering_timeout".
Ruslan Ermilov <ru@nginx.com>
parents: 171
diff changeset
1007 <para>
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1008 The value “<literal>always</literal>” will cause nginx to unconditionally
172
5e8e63f73c33 Documented "lingering_close", "lingering_time", and "lingering_timeout".
Ruslan Ermilov <ru@nginx.com>
parents: 171
diff changeset
1009 wait for and process additional client data.
5e8e63f73c33 Documented "lingering_close", "lingering_time", and "lingering_timeout".
Ruslan Ermilov <ru@nginx.com>
parents: 171
diff changeset
1010 </para>
5e8e63f73c33 Documented "lingering_close", "lingering_time", and "lingering_timeout".
Ruslan Ermilov <ru@nginx.com>
parents: 171
diff changeset
1011
5e8e63f73c33 Documented "lingering_close", "lingering_time", and "lingering_timeout".
Ruslan Ermilov <ru@nginx.com>
parents: 171
diff changeset
1012 <para>
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1013 The value “<literal>off</literal>” tells nginx to never wait for
172
5e8e63f73c33 Documented "lingering_close", "lingering_time", and "lingering_timeout".
Ruslan Ermilov <ru@nginx.com>
parents: 171
diff changeset
1014 more data and close the connection immediately.
5e8e63f73c33 Documented "lingering_close", "lingering_time", and "lingering_timeout".
Ruslan Ermilov <ru@nginx.com>
parents: 171
diff changeset
1015 This breaks the protocol and should not be used under normal circumstances.
5e8e63f73c33 Documented "lingering_close", "lingering_time", and "lingering_timeout".
Ruslan Ermilov <ru@nginx.com>
parents: 171
diff changeset
1016 </para>
5e8e63f73c33 Documented "lingering_close", "lingering_time", and "lingering_timeout".
Ruslan Ermilov <ru@nginx.com>
parents: 171
diff changeset
1017
5e8e63f73c33 Documented "lingering_close", "lingering_time", and "lingering_timeout".
Ruslan Ermilov <ru@nginx.com>
parents: 171
diff changeset
1018 </directive>
5e8e63f73c33 Documented "lingering_close", "lingering_time", and "lingering_timeout".
Ruslan Ermilov <ru@nginx.com>
parents: 171
diff changeset
1019
5e8e63f73c33 Documented "lingering_close", "lingering_time", and "lingering_timeout".
Ruslan Ermilov <ru@nginx.com>
parents: 171
diff changeset
1020
5e8e63f73c33 Documented "lingering_close", "lingering_time", and "lingering_timeout".
Ruslan Ermilov <ru@nginx.com>
parents: 171
diff changeset
1021 <directive name="lingering_time">
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1022 <syntax><value>time</value></syntax>
172
5e8e63f73c33 Documented "lingering_close", "lingering_time", and "lingering_timeout".
Ruslan Ermilov <ru@nginx.com>
parents: 171
diff changeset
1023 <default>30s</default>
5e8e63f73c33 Documented "lingering_close", "lingering_time", and "lingering_timeout".
Ruslan Ermilov <ru@nginx.com>
parents: 171
diff changeset
1024 <context>http</context>
5e8e63f73c33 Documented "lingering_close", "lingering_time", and "lingering_timeout".
Ruslan Ermilov <ru@nginx.com>
parents: 171
diff changeset
1025 <context>server</context>
5e8e63f73c33 Documented "lingering_close", "lingering_time", and "lingering_timeout".
Ruslan Ermilov <ru@nginx.com>
parents: 171
diff changeset
1026 <context>location</context>
5e8e63f73c33 Documented "lingering_close", "lingering_time", and "lingering_timeout".
Ruslan Ermilov <ru@nginx.com>
parents: 171
diff changeset
1027
5e8e63f73c33 Documented "lingering_close", "lingering_time", and "lingering_timeout".
Ruslan Ermilov <ru@nginx.com>
parents: 171
diff changeset
1028 <para>
5e8e63f73c33 Documented "lingering_close", "lingering_time", and "lingering_timeout".
Ruslan Ermilov <ru@nginx.com>
parents: 171
diff changeset
1029 When <link id="lingering_close"/> is in effect,
5e8e63f73c33 Documented "lingering_close", "lingering_time", and "lingering_timeout".
Ruslan Ermilov <ru@nginx.com>
parents: 171
diff changeset
1030 this directive specifies a maximum time during which nginx
5e8e63f73c33 Documented "lingering_close", "lingering_time", and "lingering_timeout".
Ruslan Ermilov <ru@nginx.com>
parents: 171
diff changeset
1031 will process (read and ignore) additional data coming from a client.
5e8e63f73c33 Documented "lingering_close", "lingering_time", and "lingering_timeout".
Ruslan Ermilov <ru@nginx.com>
parents: 171
diff changeset
1032 After that, the connection is closed, even if there are more data.
5e8e63f73c33 Documented "lingering_close", "lingering_time", and "lingering_timeout".
Ruslan Ermilov <ru@nginx.com>
parents: 171
diff changeset
1033 </para>
5e8e63f73c33 Documented "lingering_close", "lingering_time", and "lingering_timeout".
Ruslan Ermilov <ru@nginx.com>
parents: 171
diff changeset
1034
5e8e63f73c33 Documented "lingering_close", "lingering_time", and "lingering_timeout".
Ruslan Ermilov <ru@nginx.com>
parents: 171
diff changeset
1035 </directive>
5e8e63f73c33 Documented "lingering_close", "lingering_time", and "lingering_timeout".
Ruslan Ermilov <ru@nginx.com>
parents: 171
diff changeset
1036
5e8e63f73c33 Documented "lingering_close", "lingering_time", and "lingering_timeout".
Ruslan Ermilov <ru@nginx.com>
parents: 171
diff changeset
1037
5e8e63f73c33 Documented "lingering_close", "lingering_time", and "lingering_timeout".
Ruslan Ermilov <ru@nginx.com>
parents: 171
diff changeset
1038 <directive name="lingering_timeout">
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1039 <syntax><value>time</value></syntax>
172
5e8e63f73c33 Documented "lingering_close", "lingering_time", and "lingering_timeout".
Ruslan Ermilov <ru@nginx.com>
parents: 171
diff changeset
1040 <default>5s</default>
5e8e63f73c33 Documented "lingering_close", "lingering_time", and "lingering_timeout".
Ruslan Ermilov <ru@nginx.com>
parents: 171
diff changeset
1041 <context>http</context>
5e8e63f73c33 Documented "lingering_close", "lingering_time", and "lingering_timeout".
Ruslan Ermilov <ru@nginx.com>
parents: 171
diff changeset
1042 <context>server</context>
5e8e63f73c33 Documented "lingering_close", "lingering_time", and "lingering_timeout".
Ruslan Ermilov <ru@nginx.com>
parents: 171
diff changeset
1043 <context>location</context>
5e8e63f73c33 Documented "lingering_close", "lingering_time", and "lingering_timeout".
Ruslan Ermilov <ru@nginx.com>
parents: 171
diff changeset
1044
5e8e63f73c33 Documented "lingering_close", "lingering_time", and "lingering_timeout".
Ruslan Ermilov <ru@nginx.com>
parents: 171
diff changeset
1045 <para>
5e8e63f73c33 Documented "lingering_close", "lingering_time", and "lingering_timeout".
Ruslan Ermilov <ru@nginx.com>
parents: 171
diff changeset
1046 When <link id="lingering_close"/> is in effect, this directive specifies
5e8e63f73c33 Documented "lingering_close", "lingering_time", and "lingering_timeout".
Ruslan Ermilov <ru@nginx.com>
parents: 171
diff changeset
1047 a maximum waiting time for more client data to arrive.
5e8e63f73c33 Documented "lingering_close", "lingering_time", and "lingering_timeout".
Ruslan Ermilov <ru@nginx.com>
parents: 171
diff changeset
1048 If data are not received during this time, the connection is closed.
5e8e63f73c33 Documented "lingering_close", "lingering_time", and "lingering_timeout".
Ruslan Ermilov <ru@nginx.com>
parents: 171
diff changeset
1049 Otherwise, data are read and ignored, then nginx waits again for more data.
5e8e63f73c33 Documented "lingering_close", "lingering_time", and "lingering_timeout".
Ruslan Ermilov <ru@nginx.com>
parents: 171
diff changeset
1050 The “wait-read-ignore” cycle is repeated, but no longer than specified by the
5e8e63f73c33 Documented "lingering_close", "lingering_time", and "lingering_timeout".
Ruslan Ermilov <ru@nginx.com>
parents: 171
diff changeset
1051 <link id="lingering_time"/> directive.
5e8e63f73c33 Documented "lingering_close", "lingering_time", and "lingering_timeout".
Ruslan Ermilov <ru@nginx.com>
parents: 171
diff changeset
1052 </para>
5e8e63f73c33 Documented "lingering_close", "lingering_time", and "lingering_timeout".
Ruslan Ermilov <ru@nginx.com>
parents: 171
diff changeset
1053
5e8e63f73c33 Documented "lingering_close", "lingering_time", and "lingering_timeout".
Ruslan Ermilov <ru@nginx.com>
parents: 171
diff changeset
1054 </directive>
5e8e63f73c33 Documented "lingering_close", "lingering_time", and "lingering_timeout".
Ruslan Ermilov <ru@nginx.com>
parents: 171
diff changeset
1055
5e8e63f73c33 Documented "lingering_close", "lingering_time", and "lingering_timeout".
Ruslan Ermilov <ru@nginx.com>
parents: 171
diff changeset
1056
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1057 <directive name="listen">
102
c76a257f3fd4 The directive name is now automatically printed in <default> and <syntax>.
Ruslan Ermilov <ru@nginx.com>
parents: 98
diff changeset
1058 <syntax>
364
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 318
diff changeset
1059 <value>address</value>[:<value>port</value>]
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 318
diff changeset
1060 [<literal>default_server</literal>]
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 318
diff changeset
1061 [<literal>setfib</literal>=<value>number</value>]
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 318
diff changeset
1062 [<literal>backlog</literal>=<value>number</value>]
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 318
diff changeset
1063 [<literal>rcvbuf</literal>=<value>size</value>]
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 318
diff changeset
1064 [<literal>sndbuf</literal>=<value>size</value>]
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 318
diff changeset
1065 [<literal>accept_filter</literal>=<value>filter</value>]
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 318
diff changeset
1066 [<literal>deferred</literal>]
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 318
diff changeset
1067 [<literal>bind</literal>]
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 318
diff changeset
1068 [<literal>ipv6only</literal>=<literal>on</literal>|<literal>off</literal>]
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 318
diff changeset
1069 [<literal>ssl</literal>]
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 318
diff changeset
1070 [<literal>so_keepalive</literal>=<literal>on</literal>|<literal>off</literal>|[<value>keepidle</value>]:[<value>keepintvl</value>]:[<value>keepcnt</value>]]</syntax>
102
c76a257f3fd4 The directive name is now automatically printed in <default> and <syntax>.
Ruslan Ermilov <ru@nginx.com>
parents: 98
diff changeset
1071 <syntax>
364
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 318
diff changeset
1072 <value>port</value>
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 318
diff changeset
1073 [<literal>default_server</literal>]
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 318
diff changeset
1074 [<literal>setfib</literal>=<value>number</value>]
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 318
diff changeset
1075 [<literal>backlog</literal>=<value>number</value>]
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 318
diff changeset
1076 [<literal>rcvbuf</literal>=<value>size</value>]
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 318
diff changeset
1077 [<literal>sndbuf</literal>=<value>size</value>]
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 318
diff changeset
1078 [<literal>accept_filter</literal>=<value>filter</value>]
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 318
diff changeset
1079 [<literal>deferred</literal>]
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 318
diff changeset
1080 [<literal>bind</literal>]
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 318
diff changeset
1081 [<literal>ipv6only</literal>=<literal>on</literal>|<literal>off</literal>]
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 318
diff changeset
1082 [<literal>ssl</literal>]
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 318
diff changeset
1083 [<literal>so_keepalive</literal>=<literal>on</literal>|<literal>off</literal>|[<value>keepidle</value>]:[<value>keepintvl</value>]:[<value>keepcnt</value>]]</syntax>
102
c76a257f3fd4 The directive name is now automatically printed in <default> and <syntax>.
Ruslan Ermilov <ru@nginx.com>
parents: 98
diff changeset
1084 <syntax>
364
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 318
diff changeset
1085 <literal>unix:</literal><value>path</value>
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 318
diff changeset
1086 [<literal>default_server</literal>]
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 318
diff changeset
1087 [<literal>backlog</literal>=<value>number</value>]
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 318
diff changeset
1088 [<literal>rcvbuf</literal>=<value>size</value>]
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 318
diff changeset
1089 [<literal>sndbuf</literal>=<value>size</value>]
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 318
diff changeset
1090 [<literal>accept_filter</literal>=<value>filter</value>]
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 318
diff changeset
1091 [<literal>deferred</literal>]
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 318
diff changeset
1092 [<literal>bind</literal>]
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 318
diff changeset
1093 [<literal>ssl</literal>]
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 318
diff changeset
1094 [<literal>so_keepalive</literal>=<literal>on</literal>|<literal>off</literal>|[<value>keepidle</value>]:[<value>keepintvl</value>]:[<value>keepcnt</value>]]</syntax>
102
c76a257f3fd4 The directive name is now automatically printed in <default> and <syntax>.
Ruslan Ermilov <ru@nginx.com>
parents: 98
diff changeset
1095 <default>*:80 | *:8000</default>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1096 <context>server</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1097
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1098 <para>
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1099 Sets an <value>address</value> and a <value>port</value> for IP,
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1100 or a <value>path</value> for a UNIX-domain socket, on which
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1101 the server will accept requests.
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1102 Only one of <value>address</value> or <value>port</value> may be
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1103 specified.
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1104 An <value>address</value> may also be a hostname, for example:
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1105 <example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1106 listen 127.0.0.1:8000;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1107 listen 127.0.0.1;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1108 listen 8000;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1109 listen *:8000;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1110 listen localhost:8000;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1111 </example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1112 IPv6 addresses (0.7.36) are specified in square brackets:
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1113 <example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1114 listen [::]:8000;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1115 listen [fe80::1];
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1116 </example>
364
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 318
diff changeset
1117 UNIX-domain sockets (0.8.21) are specified with the “<literal>unix:</literal>”
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 318
diff changeset
1118 prefix:
66
9332d7a02822 In the "listen" directive,
Ruslan Ermilov <ru@nginx.com>
parents: 65
diff changeset
1119 <example>
9332d7a02822 In the "listen" directive,
Ruslan Ermilov <ru@nginx.com>
parents: 65
diff changeset
1120 listen unix:/var/run/nginx.sock;
9332d7a02822 In the "listen" directive,
Ruslan Ermilov <ru@nginx.com>
parents: 65
diff changeset
1121 </example>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1122 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1123
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1124 <para>
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1125 If only <value>address</value> is given, the port 80 is used.
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1126 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1127
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1128 <para>
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1129 If directive is not present then either the <literal>*:80</literal> is used
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1130 if nginx runs with superuser privileges, or <literal>*:8000</literal> otherwise.
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1131 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1132
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1133 <para>
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1134 The <literal>default_server</literal> parameter, if present,
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1135 will cause the server to become the default server for the specified
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1136 <value>address</value>:<value>port</value> pair.
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1137 If none of the directives have the <literal>default_server</literal>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1138 parameter then the first server with the
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1139 <value>address</value>:<value>port</value> pair will be
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1140 the default server for this pair.
66
9332d7a02822 In the "listen" directive,
Ruslan Ermilov <ru@nginx.com>
parents: 65
diff changeset
1141 <note>
9332d7a02822 In the "listen" directive,
Ruslan Ermilov <ru@nginx.com>
parents: 65
diff changeset
1142 In versions prior to 0.8.21 this parameter is named simply
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1143 <literal>default</literal>.
66
9332d7a02822 In the "listen" directive,
Ruslan Ermilov <ru@nginx.com>
parents: 65
diff changeset
1144 </note>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1145 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1146
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1147 <para>
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1148 A <literal>listen</literal> directive
66
9332d7a02822 In the "listen" directive,
Ruslan Ermilov <ru@nginx.com>
parents: 65
diff changeset
1149 can have several additional parameters specific to system calls
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1150 <c-func>listen</c-func> and <c-func>bind</c-func>.
66
9332d7a02822 In the "listen" directive,
Ruslan Ermilov <ru@nginx.com>
parents: 65
diff changeset
1151 They can be specified in any
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1152 <literal>listen</literal> directive, but only once for the given
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1153 <value>address</value>:<value>port</value> pair.
66
9332d7a02822 In the "listen" directive,
Ruslan Ermilov <ru@nginx.com>
parents: 65
diff changeset
1154 <note>
9332d7a02822 In the "listen" directive,
Ruslan Ermilov <ru@nginx.com>
parents: 65
diff changeset
1155 In versions prior to 0.8.21, they could only be
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1156 specified in the <literal>listen</literal> directive with the
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1157 <literal>default</literal> parameter.
66
9332d7a02822 In the "listen" directive,
Ruslan Ermilov <ru@nginx.com>
parents: 65
diff changeset
1158 </note>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1159 <list type="tag">
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1160
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1161 <tag-name>
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1162 <literal>setfib</literal>=<value>number</value>
66
9332d7a02822 In the "listen" directive,
Ruslan Ermilov <ru@nginx.com>
parents: 65
diff changeset
1163 </tag-name>
9332d7a02822 In the "listen" directive,
Ruslan Ermilov <ru@nginx.com>
parents: 65
diff changeset
1164 <tag-desc>
9332d7a02822 In the "listen" directive,
Ruslan Ermilov <ru@nginx.com>
parents: 65
diff changeset
1165 this parameter (0.8.44) sets the associated FIB (routing table)
9332d7a02822 In the "listen" directive,
Ruslan Ermilov <ru@nginx.com>
parents: 65
diff changeset
1166 for the listening socket.
9332d7a02822 In the "listen" directive,
Ruslan Ermilov <ru@nginx.com>
parents: 65
diff changeset
1167 This currently works only on FreeBSD.
9332d7a02822 In the "listen" directive,
Ruslan Ermilov <ru@nginx.com>
parents: 65
diff changeset
1168 </tag-desc>
9332d7a02822 In the "listen" directive,
Ruslan Ermilov <ru@nginx.com>
parents: 65
diff changeset
1169
9332d7a02822 In the "listen" directive,
Ruslan Ermilov <ru@nginx.com>
parents: 65
diff changeset
1170 <tag-name>
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1171 <literal>backlog</literal>=<value>number</value>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1172 </tag-name>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1173 <tag-desc>
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1174 sets the <literal>backlog</literal> parameter in the
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1175 <c-func>listen</c-func> call.
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1176 By default, <literal>backlog</literal> equals -1 on FreeBSD
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1177 and 511 on other platforms.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1178 </tag-desc>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1179
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1180 <tag-name>
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1181 <literal>rcvbuf</literal>=<value>size</value>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1182 </tag-name>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1183 <tag-desc>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1184 sets the <c-def>SO_RCVBUF</c-def> parameter for the listening socket.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1185 </tag-desc>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1186
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1187 <tag-name>
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1188 <literal>sndbuf</literal>=<value>size</value>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1189 </tag-name>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1190 <tag-desc>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1191 sets the <c-def>SO_SNDBUF</c-def> parameter for the listening socket.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1192 </tag-desc>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1193
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1194 <tag-name>
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1195 <literal>accept_filter</literal>=<value>filter</value>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1196 </tag-name>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1197 <tag-desc>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1198 sets the name of the accept filter.
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1199 This works only on FreeBSD, acceptable values are <literal>dataready</literal>
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1200 and <literal>httpready</literal>.
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1201 On receipt of the <c-def>SIGHUP</c-def> signal, an accept filter can only be
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1202 changed in recent versions of FreeBSD, starting from 6.0, 5.4-STABLE
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1203 and 4.11-STABLE.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1204 </tag-desc>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1205
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1206 <tag-name>
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1207 <literal>deferred</literal>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1208 </tag-name>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1209 <tag-desc>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1210 instructs to use a deferred <c-func>accept</c-func> on Linux
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1211 using the <c-def>TCP_DEFER_ACCEPT</c-def> option.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1212 </tag-desc>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1213
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1214 <tag-name>
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1215 <literal>bind</literal>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1216 </tag-name>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1217 <tag-desc>
240
472e88bf177e Slightly better wording for the "bind" parameter of the "listen" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 237
diff changeset
1218 instructs to make a separate <c-func>bind</c-func> call for a given
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1219 <value>address</value>:<value>port</value> pair.
240
472e88bf177e Slightly better wording for the "bind" parameter of the "listen" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 237
diff changeset
1220 This is because nginx will <c-func>bind</c-func> only to
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1221 <literal>*:</literal><value>port</value>
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1222 if there are several <literal>listen</literal> directives with
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1223 the same port but different addresses, and one of the
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1224 <literal>listen</literal> directives listens on all addresses
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1225 for the given port (<literal>*:</literal><value>port</value>).
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1226 It should be noted that in this case a <c-func>getsockname</c-func>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1227 system call will be made to determine an address that accepted a
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1228 connection.
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1229 If parameters <literal>backlog</literal>, <literal>rcvbuf</literal>,
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1230 <literal>sndbuf</literal>, <literal>accept_filter</literal>,
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1231 <literal>deferred</literal>, or <literal>so_keepalive</literal>
223
09b8c8b2b865 Documented the "so_keepalive" parameter of the "listen" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 185
diff changeset
1232 are used then for a given
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1233 <value>address</value>:<value>port</value> pair
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1234 a separate <c-func>bind</c-func> call will always be made.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1235 </tag-desc>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1236
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1237 <tag-name>
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1238 <literal>ipv6only</literal>=<literal>on</literal>|<literal>off</literal>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1239 </tag-name>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1240 <tag-desc>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1241 this parameter (0.7.42) sets the value of the <c-def>IPV6_V6ONLY</c-def>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1242 parameter for the listening socket.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1243 This parameter can only be set once on start.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1244 </tag-desc>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1245
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1246 <tag-name>
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1247 <literal>ssl</literal>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1248 </tag-name>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1249 <tag-desc>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1250 this parameter (0.7.14) does not relate to system calls
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1251 <c-func>listen</c-func> and <c-func>bind</c-func>, but allows to
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1252 specify that all connections accepted on this port should work in
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1253 the SSL mode.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1254 This allows for a more compact configuration for the server operating
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1255 in both HTTP and HTTPS modes simultaneously.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1256 <example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1257 listen 80;
476
4070589eebce In "listen", specifying "ssl" doesn't require specifying "default".
Ruslan Ermilov <ru@nginx.com>
parents: 467
diff changeset
1258 listen 443 ssl;
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1259 </example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1260 </tag-desc>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1261
223
09b8c8b2b865 Documented the "so_keepalive" parameter of the "listen" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 185
diff changeset
1262 <tag-name>
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1263 <literal>so_keepalive</literal>=<literal>on</literal>|<literal>off</literal>|[<value>keepidle</value>]:[<value>keepintvl</value>]:[<value>keepcnt</value>]
223
09b8c8b2b865 Documented the "so_keepalive" parameter of the "listen" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 185
diff changeset
1264 </tag-name>
09b8c8b2b865 Documented the "so_keepalive" parameter of the "listen" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 185
diff changeset
1265 <tag-desc>
09b8c8b2b865 Documented the "so_keepalive" parameter of the "listen" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 185
diff changeset
1266 this parameter (1.1.11) configures the “TCP keepalive” behavior
09b8c8b2b865 Documented the "so_keepalive" parameter of the "listen" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 185
diff changeset
1267 for the listening socket.
09b8c8b2b865 Documented the "so_keepalive" parameter of the "listen" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 185
diff changeset
1268 If this parameter is omitted then the system default setting will be
09b8c8b2b865 Documented the "so_keepalive" parameter of the "listen" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 185
diff changeset
1269 in effect for the socket.
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1270 If set to the value “<literal>on</literal>”, the <c-def>SO_KEEPALIVE</c-def>
223
09b8c8b2b865 Documented the "so_keepalive" parameter of the "listen" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 185
diff changeset
1271 socket option is turned on for the socket.
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1272 If set to the value “<literal>off</literal>”, the <c-def>SO_KEEPALIVE</c-def>
223
09b8c8b2b865 Documented the "so_keepalive" parameter of the "listen" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 185
diff changeset
1273 socket option is turned off for the socket.
09b8c8b2b865 Documented the "so_keepalive" parameter of the "listen" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 185
diff changeset
1274 Some operating systems support tuning TCP keepalive parameters on a per-socket
09b8c8b2b865 Documented the "so_keepalive" parameter of the "listen" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 185
diff changeset
1275 basis using the <c-def>TCP_KEEPIDLE</c-def>, <c-def>TCP_KEEPINTVL</c-def>,
09b8c8b2b865 Documented the "so_keepalive" parameter of the "listen" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 185
diff changeset
1276 and <c-def>TCP_KEEPCNT</c-def> socket options.
397
f1c0ae9c1c48 FreeBSD 10.0-CURRENT supports the TCP_KEEPIDLE, TCP_KEEPINTVL, and
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
1277 On such systems (currently, Linux 2.4+, NetBSD 5+, and
454
daafc5600fc4 FreeBSD 9.0-STABLE supports the TCP_KEEPIDLE, TCP_KEEPINTVL, and
Ruslan Ermilov <ru@nginx.com>
parents: 453
diff changeset
1278 FreeBSD 9.0-STABLE) they can be configured
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1279 using the <value>keepidle</value>, <value>keepintvl</value>, and
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1280 <value>keepcnt</value> parameters.
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1281 One or two parameters may be omitted, in which case the system default setting
223
09b8c8b2b865 Documented the "so_keepalive" parameter of the "listen" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 185
diff changeset
1282 for the corresponding socket option will be in effect.
09b8c8b2b865 Documented the "so_keepalive" parameter of the "listen" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 185
diff changeset
1283 For example,
09b8c8b2b865 Documented the "so_keepalive" parameter of the "listen" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 185
diff changeset
1284 <example>so_keepalive=30m::10</example>
09b8c8b2b865 Documented the "so_keepalive" parameter of the "listen" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 185
diff changeset
1285 will set idle timeout (<c-def>TCP_KEEPIDLE</c-def>) to 30 minutes,
09b8c8b2b865 Documented the "so_keepalive" parameter of the "listen" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 185
diff changeset
1286 leave probe interval (<c-def>TCP_KEEPINTVL</c-def>) at its system default,
09b8c8b2b865 Documented the "so_keepalive" parameter of the "listen" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 185
diff changeset
1287 and set probes count (<c-def>TCP_KEEPCNT</c-def>) to 10 probes.
09b8c8b2b865 Documented the "so_keepalive" parameter of the "listen" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 185
diff changeset
1288 </tag-desc>
09b8c8b2b865 Documented the "so_keepalive" parameter of the "listen" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 185
diff changeset
1289
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1290 </list>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1291 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1292
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1293 <para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1294 Example:
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1295 <example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1296 listen 127.0.0.1 default accept_filter=dataready backlog=1024;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1297 </example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1298 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1299
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1300 </directive>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1301
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1302
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1303 <directive name="location">
108
72524ae53106 Explicitly marked directives with the block syntax. Such directives will
Ruslan Ermilov <ru@nginx.com>
parents: 106
diff changeset
1304 <syntax block="yes">[
364
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 318
diff changeset
1305 <literal>=</literal> |
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 318
diff changeset
1306 <literal>~</literal> |
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 318
diff changeset
1307 <literal>~*</literal> |
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 318
diff changeset
1308 <literal>^~</literal>
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 318
diff changeset
1309 ] <value>uri</value></syntax>
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1310 <syntax block="yes"><literal>@</literal><value>name</value></syntax>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1311 <default/>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1312 <context>server</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1313 <context>location</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1314
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1315 <para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1316 Sets a configuration based on a request URI.
503
aed015c3dedd Documented URI normalization rules, including %-decoding.
Ruslan Ermilov <ru@nginx.com>
parents: 499
diff changeset
1317 </para>
aed015c3dedd Documented URI normalization rules, including %-decoding.
Ruslan Ermilov <ru@nginx.com>
parents: 499
diff changeset
1318
aed015c3dedd Documented URI normalization rules, including %-decoding.
Ruslan Ermilov <ru@nginx.com>
parents: 499
diff changeset
1319 <para>
aed015c3dedd Documented URI normalization rules, including %-decoding.
Ruslan Ermilov <ru@nginx.com>
parents: 499
diff changeset
1320 The matching is performed against a normalized URI,
aed015c3dedd Documented URI normalization rules, including %-decoding.
Ruslan Ermilov <ru@nginx.com>
parents: 499
diff changeset
1321 after decoding a text encoded in the “<literal>%XX</literal>” form,
aed015c3dedd Documented URI normalization rules, including %-decoding.
Ruslan Ermilov <ru@nginx.com>
parents: 499
diff changeset
1322 resolving references to relative path components “<literal>.</literal>”
aed015c3dedd Documented URI normalization rules, including %-decoding.
Ruslan Ermilov <ru@nginx.com>
parents: 499
diff changeset
1323 and “<literal>..</literal>”, and possible
aed015c3dedd Documented URI normalization rules, including %-decoding.
Ruslan Ermilov <ru@nginx.com>
parents: 499
diff changeset
1324 <link id="merge_slashes">compression</link> of two or more
aed015c3dedd Documented URI normalization rules, including %-decoding.
Ruslan Ermilov <ru@nginx.com>
parents: 499
diff changeset
1325 adjacent slashes into a single slash.
aed015c3dedd Documented URI normalization rules, including %-decoding.
Ruslan Ermilov <ru@nginx.com>
parents: 499
diff changeset
1326 </para>
aed015c3dedd Documented URI normalization rules, including %-decoding.
Ruslan Ermilov <ru@nginx.com>
parents: 499
diff changeset
1327
aed015c3dedd Documented URI normalization rules, including %-decoding.
Ruslan Ermilov <ru@nginx.com>
parents: 499
diff changeset
1328 <para>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1329 A location can either be defined by a prefix string, or by a regular expression.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1330 Regular expressions are specified by prepending them with the
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1331 “<literal>~*</literal>” prefix (for case-insensitive matching), or with the
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1332 “<literal>~</literal>” prefix (for case-sensitive matching).
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1333 To find a location matching a given request, nginx first checks
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1334 locations defined using the prefix strings (prefix locations).
88
6876e2558d09 Spell checking.
Ruslan Ermilov <ru@nginx.com>
parents: 86
diff changeset
1335 Among them, the most specific one is searched.
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1336 Then regular expressions are checked, in the order of their appearance
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1337 in a configuration file.
244
9e2be02df2ce Fixed wording.
Ruslan Ermilov <ru@nginx.com>
parents: 241
diff changeset
1338 A search of regular expressions terminates on the first match,
9e2be02df2ce Fixed wording.
Ruslan Ermilov <ru@nginx.com>
parents: 241
diff changeset
1339 and the corresponding configuration is used.
9e2be02df2ce Fixed wording.
Ruslan Ermilov <ru@nginx.com>
parents: 241
diff changeset
1340 If no match with a regular expression is found then a
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1341 configuration of the most specific prefix location is used.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1342 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1343
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1344 <para>
67
d98323a15ba4 Documented the nested locations.
Ruslan Ermilov <ru@nginx.com>
parents: 66
diff changeset
1345 Locations can be nested, with some exceptions mentioned below.
d98323a15ba4 Documented the nested locations.
Ruslan Ermilov <ru@nginx.com>
parents: 66
diff changeset
1346 </para>
d98323a15ba4 Documented the nested locations.
Ruslan Ermilov <ru@nginx.com>
parents: 66
diff changeset
1347
d98323a15ba4 Documented the nested locations.
Ruslan Ermilov <ru@nginx.com>
parents: 66
diff changeset
1348 <para>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1349 For case-insensitive operating systems such as Mac OS X and Cygwin,
244
9e2be02df2ce Fixed wording.
Ruslan Ermilov <ru@nginx.com>
parents: 241
diff changeset
1350 matching with prefix strings ignores a case (0.7.7).
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1351 However, comparison is limited to one-byte locales.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1352 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1353
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1354 <para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1355 Regular expressions can contain captures (0.7.40) that can later
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1356 be used in other directives.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1357 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1358
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1359 <para>
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1360 If the most specific prefix location has the “<literal>^~</literal>” prefix
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1361 then regular expressions are not checked.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1362 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1363
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1364 <para>
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1365 Also, using the “<literal>=</literal>” prefix it is possible to define
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1366 an exact match of URI and location.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1367 If an exact match is found, the search terminates.
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1368 For example, if a “<literal>/</literal>” request happens frequently,
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1369 defining “<literal>location = /</literal>” will speed up the processing
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1370 of these requests, as search terminates right after the first
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1371 comparison.
67
d98323a15ba4 Documented the nested locations.
Ruslan Ermilov <ru@nginx.com>
parents: 66
diff changeset
1372 Such a location cannot obviously contain nested locations.
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1373 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1374
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1375 <para>
67
d98323a15ba4 Documented the nested locations.
Ruslan Ermilov <ru@nginx.com>
parents: 66
diff changeset
1376 <note>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1377 In versions from 0.7.1 to 0.8.41, if a request matched the prefix
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1378 location without the “<literal>=</literal>” and “<literal>^~</literal>”
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1379 prefixes, the search also terminated and regular expressions were
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1380 not checked.
67
d98323a15ba4 Documented the nested locations.
Ruslan Ermilov <ru@nginx.com>
parents: 66
diff changeset
1381 </note>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1382 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1383
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1384 <para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1385 Let's illustrate the above by example:
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1386 <example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1387 location = / {
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1388 [ configuration A ]
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1389 }
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1390
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1391 location / {
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1392 [ configuration B ]
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1393 }
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1394
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1395 location ^~ /images/ {
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1396 [ configuration C ]
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1397 }
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1398
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1399 location ~* \.(gif|jpg|jpeg)$ {
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1400 [ configuration D ]
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1401 }
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1402 </example>
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1403 The “<literal>/</literal>” request will match configuration A,
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1404 the “<literal>/documents/document.html</literal>” request will match
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1405 configuration B,
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1406 the “<literal>/images/1.gif</literal>” request will match configuration C, and
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1407 the “<literal>/documents/1.jpg</literal>” request will match configuration D.
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1408 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1409
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1410 <para>
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1411 The “<literal>@</literal>” prefix defines a named location.
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1412 Such a location is not used for a regular request processing, but instead
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1413 used for request redirection.
67
d98323a15ba4 Documented the nested locations.
Ruslan Ermilov <ru@nginx.com>
parents: 66
diff changeset
1414 They cannot be nested, and cannot contain nested locations.
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1415 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1416
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1417 <!--
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1418 <migration from="Apache" directive="Location" />
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1419 -->
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1420
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1421 </directive>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1422
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1423
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1424 <directive name="log_not_found">
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1425 <syntax><literal>on</literal> | <literal>off</literal></syntax>
102
c76a257f3fd4 The directive name is now automatically printed in <default> and <syntax>.
Ruslan Ermilov <ru@nginx.com>
parents: 98
diff changeset
1426 <default>on</default>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1427 <context>http</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1428 <context>server</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1429 <context>location</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1430
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1431 <para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1432 Enables or disables logging of errors about not found files into the
106
56457a474903 If text of the link is not provided, the @id is used.
Ruslan Ermilov <ru@nginx.com>
parents: 102
diff changeset
1433 <link doc="../ngx_core_module.xml" id="error_log"/>.
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1434 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1435
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1436 </directive>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1437
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1438
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1439 <directive name="log_subrequest">
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1440 <syntax><literal>on</literal> | <literal>off</literal></syntax>
102
c76a257f3fd4 The directive name is now automatically printed in <default> and <syntax>.
Ruslan Ermilov <ru@nginx.com>
parents: 98
diff changeset
1441 <default>off</default>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1442 <context>http</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1443 <context>server</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1444 <context>location</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1445
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1446 <para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1447 Enables or disables logging of subrequests into the
106
56457a474903 If text of the link is not provided, the @id is used.
Ruslan Ermilov <ru@nginx.com>
parents: 102
diff changeset
1448 <link doc="ngx_http_log_module.xml" id="access_log"/>.
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1449 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1450
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1451 </directive>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1452
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1453
175
3381ae6a93e4 Documented the max_ranges, postpone_output, and sendfile_max_chunk directives.
Ruslan Ermilov <ru@nginx.com>
parents: 174
diff changeset
1454 <directive name="max_ranges">
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1455 <syntax><value>number</value></syntax>
175
3381ae6a93e4 Documented the max_ranges, postpone_output, and sendfile_max_chunk directives.
Ruslan Ermilov <ru@nginx.com>
parents: 174
diff changeset
1456 <default/>
3381ae6a93e4 Documented the max_ranges, postpone_output, and sendfile_max_chunk directives.
Ruslan Ermilov <ru@nginx.com>
parents: 174
diff changeset
1457 <context>http</context>
3381ae6a93e4 Documented the max_ranges, postpone_output, and sendfile_max_chunk directives.
Ruslan Ermilov <ru@nginx.com>
parents: 174
diff changeset
1458 <context>server</context>
3381ae6a93e4 Documented the max_ranges, postpone_output, and sendfile_max_chunk directives.
Ruslan Ermilov <ru@nginx.com>
parents: 174
diff changeset
1459 <context>location</context>
499
76a8eca844d0 Documented that "max_ranges" appeared in 1.1.2.
Ruslan Ermilov <ru@nginx.com>
parents: 477
diff changeset
1460 <appeared-in>1.1.2</appeared-in>
175
3381ae6a93e4 Documented the max_ranges, postpone_output, and sendfile_max_chunk directives.
Ruslan Ermilov <ru@nginx.com>
parents: 174
diff changeset
1461
3381ae6a93e4 Documented the max_ranges, postpone_output, and sendfile_max_chunk directives.
Ruslan Ermilov <ru@nginx.com>
parents: 174
diff changeset
1462 <para>
3381ae6a93e4 Documented the max_ranges, postpone_output, and sendfile_max_chunk directives.
Ruslan Ermilov <ru@nginx.com>
parents: 174
diff changeset
1463 Limits the maximum allowed number of ranges in byte-range requests.
3381ae6a93e4 Documented the max_ranges, postpone_output, and sendfile_max_chunk directives.
Ruslan Ermilov <ru@nginx.com>
parents: 174
diff changeset
1464 Requests that exceed the limit are processed as if there were no
3381ae6a93e4 Documented the max_ranges, postpone_output, and sendfile_max_chunk directives.
Ruslan Ermilov <ru@nginx.com>
parents: 174
diff changeset
1465 byte ranges specified.
3381ae6a93e4 Documented the max_ranges, postpone_output, and sendfile_max_chunk directives.
Ruslan Ermilov <ru@nginx.com>
parents: 174
diff changeset
1466 By default, there is no limit.
3381ae6a93e4 Documented the max_ranges, postpone_output, and sendfile_max_chunk directives.
Ruslan Ermilov <ru@nginx.com>
parents: 174
diff changeset
1467 The value of zero disables the byte-range support completely.
3381ae6a93e4 Documented the max_ranges, postpone_output, and sendfile_max_chunk directives.
Ruslan Ermilov <ru@nginx.com>
parents: 174
diff changeset
1468 </para>
3381ae6a93e4 Documented the max_ranges, postpone_output, and sendfile_max_chunk directives.
Ruslan Ermilov <ru@nginx.com>
parents: 174
diff changeset
1469
3381ae6a93e4 Documented the max_ranges, postpone_output, and sendfile_max_chunk directives.
Ruslan Ermilov <ru@nginx.com>
parents: 174
diff changeset
1470 </directive>
3381ae6a93e4 Documented the max_ranges, postpone_output, and sendfile_max_chunk directives.
Ruslan Ermilov <ru@nginx.com>
parents: 174
diff changeset
1471
3381ae6a93e4 Documented the max_ranges, postpone_output, and sendfile_max_chunk directives.
Ruslan Ermilov <ru@nginx.com>
parents: 174
diff changeset
1472
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1473 <directive name="merge_slashes">
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1474 <syntax><literal>on</literal> | <literal>off</literal></syntax>
102
c76a257f3fd4 The directive name is now automatically printed in <default> and <syntax>.
Ruslan Ermilov <ru@nginx.com>
parents: 98
diff changeset
1475 <default>on</default>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1476 <context>http</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1477 <context>server</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1478
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1479 <para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1480 Enables or disables compression of two or more adjacent slashes
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1481 in a URI into a single slash.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1482 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1483
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1484 <para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1485 Note that compression is essential for the correct prefix string
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1486 and regular expressions location matching.
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1487 Without it, the “<literal>//scripts/one.php</literal>” request would not match
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1488 <example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1489 location /scripts/ {
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1490 ...
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1491 }
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1492 </example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1493 and might be processed as a static file,
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1494 so it gets converted to “<literal>/scripts/one.php</literal>”.
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1495 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1496
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1497 <para>
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1498 Turning the compression <literal>off</literal> can become necessary if a URI
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1499 contains base64-encoded names, since base64 uses the “<literal>/</literal>”
246
6bfacf7124c6 Minor tweaks.
Ruslan Ermilov <ru@nginx.com>
parents: 244
diff changeset
1500 character internally.
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1501 However, for security considerations, it is better to avoid turning off
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1502 the compression.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1503 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1504
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1505 <para>
442
b423d725a932 Try to emphasize that "underscores_in_headers" and "merge_slashes",
Ruslan Ermilov <ru@nginx.com>
parents: 438
diff changeset
1506 A directive can be specified on the <link id="server"/> level
b423d725a932 Try to emphasize that "underscores_in_headers" and "merge_slashes",
Ruslan Ermilov <ru@nginx.com>
parents: 438
diff changeset
1507 in a default server.
b423d725a932 Try to emphasize that "underscores_in_headers" and "merge_slashes",
Ruslan Ermilov <ru@nginx.com>
parents: 438
diff changeset
1508 In this case, its value will cover all virtual servers
b423d725a932 Try to emphasize that "underscores_in_headers" and "merge_slashes",
Ruslan Ermilov <ru@nginx.com>
parents: 438
diff changeset
1509 listening on the same address and port.
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1510 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1511
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1512 </directive>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1513
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1514
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1515 <directive name="msie_padding">
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1516 <syntax><literal>on</literal> | <literal>off</literal></syntax>
102
c76a257f3fd4 The directive name is now automatically printed in <default> and <syntax>.
Ruslan Ermilov <ru@nginx.com>
parents: 98
diff changeset
1517 <default>on</default>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1518 <context>http</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1519 <context>server</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1520 <context>location</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1521
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1522 <para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1523 Enables or disables adding of comments to responses with status
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1524 greater than 400 for MSIE clients, to pad the response size to 512 bytes.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1525 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1526
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1527 </directive>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1528
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1529
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1530 <directive name="msie_refresh">
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1531 <syntax><literal>on</literal> | <literal>off</literal></syntax>
102
c76a257f3fd4 The directive name is now automatically printed in <default> and <syntax>.
Ruslan Ermilov <ru@nginx.com>
parents: 98
diff changeset
1532 <default>off</default>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1533 <context>http</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1534 <context>server</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1535 <context>location</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1536
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1537 <para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1538 Enables or disables issuing refreshes instead of redirects, for MSIE clients.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1539 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1540
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1541 </directive>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1542
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1543
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1544 <directive name="open_file_cache">
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1545 <syntax><literal>off</literal></syntax>
102
c76a257f3fd4 The directive name is now automatically printed in <default> and <syntax>.
Ruslan Ermilov <ru@nginx.com>
parents: 98
diff changeset
1546 <syntax>
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1547 <literal>max</literal>=<value>N</value>
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1548 [<literal>inactive</literal>=<value>time</value>]</syntax>
102
c76a257f3fd4 The directive name is now automatically printed in <default> and <syntax>.
Ruslan Ermilov <ru@nginx.com>
parents: 98
diff changeset
1549 <default>off</default>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1550 <context>http</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1551 <context>server</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1552 <context>location</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1553
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1554 <para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1555 Configures a cache that can store:
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1556 <list type="bullet">
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1557
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1558 <listitem>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1559 open file descriptors, their sizes and modification times;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1560 </listitem>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1561
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1562 <listitem>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1563 directory lookups;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1564 </listitem>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1565
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1566 <listitem>
68
9de85defbcf8 - "optimize_server_names" is deprecated in favour of "server_name_in_redirects"
Ruslan Ermilov <ru@nginx.com>
parents: 67
diff changeset
1567 file lookup errors, such as “file not found”, “no read permission”,
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1568 and so on.
246
6bfacf7124c6 Minor tweaks.
Ruslan Ermilov <ru@nginx.com>
parents: 244
diff changeset
1569 <note>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1570 Caching of errors should be enabled separately by the
106
56457a474903 If text of the link is not provided, the @id is used.
Ruslan Ermilov <ru@nginx.com>
parents: 102
diff changeset
1571 <link id="open_file_cache_errors"/>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1572 directive.
246
6bfacf7124c6 Minor tweaks.
Ruslan Ermilov <ru@nginx.com>
parents: 244
diff changeset
1573 </note>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1574 </listitem>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1575
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1576 </list>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1577 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1578
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1579 <para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1580 The directive has the following parameters:
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1581 <list type="tag">
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1582
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1583 <tag-name>
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1584 <literal>max</literal>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1585 </tag-name>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1586 <tag-desc>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1587 sets the maximum number of elements in the cache;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1588 on cache overflow the least recently used (LRU) elements get removed;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1589 </tag-desc>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1590
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1591 <tag-name>
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1592 <literal>inactive</literal>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1593 </tag-name>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1594 <tag-desc>
68
9de85defbcf8 - "optimize_server_names" is deprecated in favour of "server_name_in_redirects"
Ruslan Ermilov <ru@nginx.com>
parents: 67
diff changeset
1595 defines a time, after which an element gets removed from the cache
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1596 if there were no accesses to it during this time;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1597 by default, it is 60 seconds;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1598 </tag-desc>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1599
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1600 <tag-name>
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1601 <literal>off</literal>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1602 </tag-name>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1603 <tag-desc>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1604 disables the cache.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1605 </tag-desc>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1606
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1607 </list>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1608 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1609
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1610 <para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1611 Example:
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1612 <example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1613 open_file_cache max=1000 inactive=20s;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1614 open_file_cache_valid 30s;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1615 open_file_cache_min_uses 2;
270
945d7299c26c Spaces are now preserved here, so removed all the hacks.
Ruslan Ermilov <ru@nginx.com>
parents: 252
diff changeset
1616 open_file_cache_errors on;<!--
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1617 open_file_cache_events on;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1618 -->
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1619 </example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1620 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1621
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1622 </directive>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1623
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1624
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1625 <directive name="open_file_cache_errors">
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1626 <syntax><literal>on</literal> | <literal>off</literal></syntax>
102
c76a257f3fd4 The directive name is now automatically printed in <default> and <syntax>.
Ruslan Ermilov <ru@nginx.com>
parents: 98
diff changeset
1627 <default>off</default>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1628 <context>http</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1629 <context>server</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1630 <context>location</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1631
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1632 <para>
68
9de85defbcf8 - "optimize_server_names" is deprecated in favour of "server_name_in_redirects"
Ruslan Ermilov <ru@nginx.com>
parents: 67
diff changeset
1633 Enables or disables caching of file lookup errors by
106
56457a474903 If text of the link is not provided, the @id is used.
Ruslan Ermilov <ru@nginx.com>
parents: 102
diff changeset
1634 <link id="open_file_cache"/>.
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1635 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1636
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1637 </directive>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1638
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1639
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1640 <!--
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1641
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1642 <directive name="open_file_cache_events">
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1643 <syntax><literal>on</literal> | <literal>off</literal></syntax>
102
c76a257f3fd4 The directive name is now automatically printed in <default> and <syntax>.
Ruslan Ermilov <ru@nginx.com>
parents: 98
diff changeset
1644 <default>off</default>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1645 <context>http</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1646 <context>server</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1647 <context>location</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1648
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1649 <para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1650 Enables to use kernel events to validate
106
56457a474903 If text of the link is not provided, the @id is used.
Ruslan Ermilov <ru@nginx.com>
parents: 102
diff changeset
1651 <link id="open_file_cache"/>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1652 elements.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1653 This directive works with the
106
56457a474903 If text of the link is not provided, the @id is used.
Ruslan Ermilov <ru@nginx.com>
parents: 102
diff changeset
1654 <link doc="../events.xml" id="kqueue"/>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1655 method only.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1656 Note that only NetBSD&nbsp;2.0+ and FreeBSD&nbsp;6.0+
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1657 support events for arbitrary file system types.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1658 Other operating systems support events only for essential
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1659 file systems such as UFS or FFS.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1660 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1661
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1662 </directive>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1663
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1664 -->
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1665
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1666
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1667 <directive name="open_file_cache_min_uses">
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1668 <syntax><value>number</value></syntax>
102
c76a257f3fd4 The directive name is now automatically printed in <default> and <syntax>.
Ruslan Ermilov <ru@nginx.com>
parents: 98
diff changeset
1669 <default>1</default>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1670 <context>http</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1671 <context>server</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1672 <context>location</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1673
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1674 <para>
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1675 Sets the minimum <value>number</value> of file accesses during
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1676 the period configured by the <literal>inactive</literal> parameter
106
56457a474903 If text of the link is not provided, the @id is used.
Ruslan Ermilov <ru@nginx.com>
parents: 102
diff changeset
1677 of the <link id="open_file_cache"/> directive,
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1678 after which a file descriptor will remain open in the cache.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1679 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1680
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1681 </directive>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1682
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1683
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1684 <directive name="open_file_cache_valid">
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1685 <syntax><value>time</value></syntax>
102
c76a257f3fd4 The directive name is now automatically printed in <default> and <syntax>.
Ruslan Ermilov <ru@nginx.com>
parents: 98
diff changeset
1686 <default>60s</default>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1687 <context>http</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1688 <context>server</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1689 <context>location</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1690
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1691 <para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1692 Sets a time after which
106
56457a474903 If text of the link is not provided, the @id is used.
Ruslan Ermilov <ru@nginx.com>
parents: 102
diff changeset
1693 <link id="open_file_cache"/>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1694 elements should be validated.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1695 <!--
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1696 When
106
56457a474903 If text of the link is not provided, the @id is used.
Ruslan Ermilov <ru@nginx.com>
parents: 102
diff changeset
1697 <link id="open_file_cache_events"/>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1698 is enabled, open file descriptors
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1699 are checked only once, and then updated right after they get changed.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1700 -->
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1701 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1702
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1703 </directive>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1704
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1705
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1706 <directive name="optimize_server_names">
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1707 <syntax><literal>on</literal> | <literal>off</literal></syntax>
102
c76a257f3fd4 The directive name is now automatically printed in <default> and <syntax>.
Ruslan Ermilov <ru@nginx.com>
parents: 98
diff changeset
1708 <default>off</default>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1709 <context>http</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1710 <context>server</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1711
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1712 <para>
68
9de85defbcf8 - "optimize_server_names" is deprecated in favour of "server_name_in_redirects"
Ruslan Ermilov <ru@nginx.com>
parents: 67
diff changeset
1713 This directive is made obsolete by the
106
56457a474903 If text of the link is not provided, the @id is used.
Ruslan Ermilov <ru@nginx.com>
parents: 102
diff changeset
1714 <link id="server_name_in_redirect"/> directive.
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1715 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1716
68
9de85defbcf8 - "optimize_server_names" is deprecated in favour of "server_name_in_redirects"
Ruslan Ermilov <ru@nginx.com>
parents: 67
diff changeset
1717 <!--
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1718 <para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1719 Enables or disables optimization of hostname checking in name-based
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1720 virtual servers.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1721 In particular, the checking affects hostnames used in redirects.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1722 If optimization is enabled, and all name-based servers listening on
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1723 the same address:port pair have identical configuration, then
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1724 names are not checked during request processing, and the first
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1725 server name is used in redirects.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1726 In case redirects should use hostnames sent by clients,
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1727 optimization needs to be disabled.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1728 </para>
68
9de85defbcf8 - "optimize_server_names" is deprecated in favour of "server_name_in_redirects"
Ruslan Ermilov <ru@nginx.com>
parents: 67
diff changeset
1729 -->
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1730
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1731 </directive>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1732
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1733
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1734 <directive name="port_in_redirect">
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1735 <syntax><literal>on</literal> | <literal>off</literal></syntax>
102
c76a257f3fd4 The directive name is now automatically printed in <default> and <syntax>.
Ruslan Ermilov <ru@nginx.com>
parents: 98
diff changeset
1736 <default>on</default>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1737 <context>http</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1738 <context>server</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1739 <context>location</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1740
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1741 <para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1742 Enables or disables specifying the port in redirects issued by nginx.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1743 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1744
159
8c124aef0041 Cross-linked "server_name_in_redirect" and "port_in_redirect" directives.
Ruslan Ermilov <ru@nginx.com>
parents: 152
diff changeset
1745 <para>
8c124aef0041 Cross-linked "server_name_in_redirect" and "port_in_redirect" directives.
Ruslan Ermilov <ru@nginx.com>
parents: 152
diff changeset
1746 See also the <link id="server_name_in_redirect"/> directive.
8c124aef0041 Cross-linked "server_name_in_redirect" and "port_in_redirect" directives.
Ruslan Ermilov <ru@nginx.com>
parents: 152
diff changeset
1747 </para>
8c124aef0041 Cross-linked "server_name_in_redirect" and "port_in_redirect" directives.
Ruslan Ermilov <ru@nginx.com>
parents: 152
diff changeset
1748
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1749 </directive>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1750
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1751
175
3381ae6a93e4 Documented the max_ranges, postpone_output, and sendfile_max_chunk directives.
Ruslan Ermilov <ru@nginx.com>
parents: 174
diff changeset
1752 <directive name="postpone_output">
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1753 <syntax><value>size</value></syntax>
175
3381ae6a93e4 Documented the max_ranges, postpone_output, and sendfile_max_chunk directives.
Ruslan Ermilov <ru@nginx.com>
parents: 174
diff changeset
1754 <default>1460</default>
3381ae6a93e4 Documented the max_ranges, postpone_output, and sendfile_max_chunk directives.
Ruslan Ermilov <ru@nginx.com>
parents: 174
diff changeset
1755 <context>http</context>
3381ae6a93e4 Documented the max_ranges, postpone_output, and sendfile_max_chunk directives.
Ruslan Ermilov <ru@nginx.com>
parents: 174
diff changeset
1756 <context>server</context>
3381ae6a93e4 Documented the max_ranges, postpone_output, and sendfile_max_chunk directives.
Ruslan Ermilov <ru@nginx.com>
parents: 174
diff changeset
1757 <context>location</context>
3381ae6a93e4 Documented the max_ranges, postpone_output, and sendfile_max_chunk directives.
Ruslan Ermilov <ru@nginx.com>
parents: 174
diff changeset
1758
3381ae6a93e4 Documented the max_ranges, postpone_output, and sendfile_max_chunk directives.
Ruslan Ermilov <ru@nginx.com>
parents: 174
diff changeset
1759 <para>
3381ae6a93e4 Documented the max_ranges, postpone_output, and sendfile_max_chunk directives.
Ruslan Ermilov <ru@nginx.com>
parents: 174
diff changeset
1760 If possible, the output of client data will be postponed until
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1761 nginx has at least <value>size</value> bytes of data to send.
175
3381ae6a93e4 Documented the max_ranges, postpone_output, and sendfile_max_chunk directives.
Ruslan Ermilov <ru@nginx.com>
parents: 174
diff changeset
1762 Value of zero disables postponing.
3381ae6a93e4 Documented the max_ranges, postpone_output, and sendfile_max_chunk directives.
Ruslan Ermilov <ru@nginx.com>
parents: 174
diff changeset
1763 </para>
3381ae6a93e4 Documented the max_ranges, postpone_output, and sendfile_max_chunk directives.
Ruslan Ermilov <ru@nginx.com>
parents: 174
diff changeset
1764
3381ae6a93e4 Documented the max_ranges, postpone_output, and sendfile_max_chunk directives.
Ruslan Ermilov <ru@nginx.com>
parents: 174
diff changeset
1765 </directive>
3381ae6a93e4 Documented the max_ranges, postpone_output, and sendfile_max_chunk directives.
Ruslan Ermilov <ru@nginx.com>
parents: 174
diff changeset
1766
3381ae6a93e4 Documented the max_ranges, postpone_output, and sendfile_max_chunk directives.
Ruslan Ermilov <ru@nginx.com>
parents: 174
diff changeset
1767
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1768 <directive name="read_ahead">
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1769 <syntax><value>size</value></syntax>
102
c76a257f3fd4 The directive name is now automatically printed in <default> and <syntax>.
Ruslan Ermilov <ru@nginx.com>
parents: 98
diff changeset
1770 <default>0</default>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1771 <context>http</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1772 <context>server</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1773 <context>location</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1774
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1775 <para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1776 Sets the amount of pre-reading when working with files, in the kernel.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1777 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1778
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1779 <para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1780 On Linux, the
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1781 <literal>posix_fadvise(0, 0, 0, POSIX_FADV_SEQUENTIAL)</literal>
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1782 system call is used, so the <value>size</value> parameter is ignored.
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1783 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1784
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1785 <para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1786 On FreeBSD, the
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1787 <literal>fcntl(O_READAHEAD,</literal>
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1788 <value>size</value><literal>)</literal>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1789 system call is used, supported in FreeBSD&nbsp;9.0-CURRENT.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1790 FreeBSD&nbsp;7 needs to be
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1791 <link url="http://sysoev.ru/freebsd/patch.readahead.txt">patched</link>.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1792 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1793
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1794 </directive>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1795
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1796
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1797 <directive name="recursive_error_pages">
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1798 <syntax><literal>on</literal> | <literal>off</literal></syntax>
102
c76a257f3fd4 The directive name is now automatically printed in <default> and <syntax>.
Ruslan Ermilov <ru@nginx.com>
parents: 98
diff changeset
1799 <default>off</default>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1800 <context>http</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1801 <context>server</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1802 <context>location</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1803
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1804 <para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1805 Enables or disables doing several redirects using the
106
56457a474903 If text of the link is not provided, the @id is used.
Ruslan Ermilov <ru@nginx.com>
parents: 102
diff changeset
1806 <link id="error_page"/>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1807 directive.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1808 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1809
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1810 </directive>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1811
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1812
169
b7b160e4e046 Rstored alphabetical order of directives.
Ruslan Ermilov <ru@nginx.com>
parents: 162
diff changeset
1813 <directive name="request_pool_size">
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1814 <syntax><value>size</value></syntax>
169
b7b160e4e046 Rstored alphabetical order of directives.
Ruslan Ermilov <ru@nginx.com>
parents: 162
diff changeset
1815 <default>4k</default>
b7b160e4e046 Rstored alphabetical order of directives.
Ruslan Ermilov <ru@nginx.com>
parents: 162
diff changeset
1816 <context>http</context>
b7b160e4e046 Rstored alphabetical order of directives.
Ruslan Ermilov <ru@nginx.com>
parents: 162
diff changeset
1817 <context>server</context>
b7b160e4e046 Rstored alphabetical order of directives.
Ruslan Ermilov <ru@nginx.com>
parents: 162
diff changeset
1818
b7b160e4e046 Rstored alphabetical order of directives.
Ruslan Ermilov <ru@nginx.com>
parents: 162
diff changeset
1819 <para>
b7b160e4e046 Rstored alphabetical order of directives.
Ruslan Ermilov <ru@nginx.com>
parents: 162
diff changeset
1820 Allows to fine tune per-request memory allocations.
b7b160e4e046 Rstored alphabetical order of directives.
Ruslan Ermilov <ru@nginx.com>
parents: 162
diff changeset
1821 This directive has minimal impact on performance,
b7b160e4e046 Rstored alphabetical order of directives.
Ruslan Ermilov <ru@nginx.com>
parents: 162
diff changeset
1822 and should not generally be used.
b7b160e4e046 Rstored alphabetical order of directives.
Ruslan Ermilov <ru@nginx.com>
parents: 162
diff changeset
1823 </para>
b7b160e4e046 Rstored alphabetical order of directives.
Ruslan Ermilov <ru@nginx.com>
parents: 162
diff changeset
1824
b7b160e4e046 Rstored alphabetical order of directives.
Ruslan Ermilov <ru@nginx.com>
parents: 162
diff changeset
1825 </directive>
b7b160e4e046 Rstored alphabetical order of directives.
Ruslan Ermilov <ru@nginx.com>
parents: 162
diff changeset
1826
b7b160e4e046 Rstored alphabetical order of directives.
Ruslan Ermilov <ru@nginx.com>
parents: 162
diff changeset
1827
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1828 <directive name="reset_timedout_connection">
364
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 318
diff changeset
1829 <syntax><literal>on</literal> | <literal>off</literal></syntax>
102
c76a257f3fd4 The directive name is now automatically printed in <default> and <syntax>.
Ruslan Ermilov <ru@nginx.com>
parents: 98
diff changeset
1830 <default>off</default>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1831 <context>http</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1832 <context>server</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1833 <context>location</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1834
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1835 <para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1836 Enables or disables resetting of timed out connections.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1837 The reset is performed as follows: before closing a socket, the
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1838 <c-def>SO_LINGER</c-def>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1839 option is set on it with a timeout value of 0.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1840 When the socket is closed, a client is sent TCP RST, and all memory
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1841 occupied by this socket is freed.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1842 This avoids keeping of an already closed socket with filled buffers
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1843 for a long time, in a FIN_WAIT1 state.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1844 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1845
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1846 <para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1847 It should be noted that timed out keep-alive connections are still
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1848 closed normally.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1849 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1850
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1851 </directive>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1852
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1853
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1854 <directive name="resolver">
185
05e7496801ec Documented recent changes in the "resolver" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 176
diff changeset
1855 <syntax>
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1856 <value>address</value> ...
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1857 [<literal>valid</literal>=<value>time</value>]</syntax>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1858 <default/>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1859 <context>http</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1860 <context>server</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1861 <context>location</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1862
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1863 <para>
527
58d79f8c412d Documented 1.3.1 changes in "resolver".
Ruslan Ermilov <ru@nginx.com>
parents: 522
diff changeset
1864 Configures name servers used to resolve names of upstream servers
58d79f8c412d Documented 1.3.1 changes in "resolver".
Ruslan Ermilov <ru@nginx.com>
parents: 522
diff changeset
1865 into addresses, for example:
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1866 <example>
527
58d79f8c412d Documented 1.3.1 changes in "resolver".
Ruslan Ermilov <ru@nginx.com>
parents: 522
diff changeset
1867 resolver 127.0.0.1 [::1]:5353;
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1868 </example>
527
58d79f8c412d Documented 1.3.1 changes in "resolver".
Ruslan Ermilov <ru@nginx.com>
parents: 522
diff changeset
1869 An address can be specified as a domain name or IP address,
566
f8148fc88224 Documented 1.2.2 changes.
Ruslan Ermilov <ru@nginx.com>
parents: 553
diff changeset
1870 and an optional port (1.3.1, 1.2.2).
527
58d79f8c412d Documented 1.3.1 changes in "resolver".
Ruslan Ermilov <ru@nginx.com>
parents: 522
diff changeset
1871 If port is not specified, the port 53 is used.
143
370cf5ccd3ca The "resolver" directive now allows specifying multiple name servers.
Ruslan Ermilov <ru@nginx.com>
parents: 140
diff changeset
1872 Name servers are queried in a round-robin fashion.
370cf5ccd3ca The "resolver" directive now allows specifying multiple name servers.
Ruslan Ermilov <ru@nginx.com>
parents: 140
diff changeset
1873 <note>
370cf5ccd3ca The "resolver" directive now allows specifying multiple name servers.
Ruslan Ermilov <ru@nginx.com>
parents: 140
diff changeset
1874 Before version 1.1.7, only a single name server could be configured.
527
58d79f8c412d Documented 1.3.1 changes in "resolver".
Ruslan Ermilov <ru@nginx.com>
parents: 522
diff changeset
1875 Specifying name servers using IPv6 addresses is supported
566
f8148fc88224 Documented 1.2.2 changes.
Ruslan Ermilov <ru@nginx.com>
parents: 553
diff changeset
1876 starting from versions 1.3.1 and 1.2.2.
143
370cf5ccd3ca The "resolver" directive now allows specifying multiple name servers.
Ruslan Ermilov <ru@nginx.com>
parents: 140
diff changeset
1877 </note>
185
05e7496801ec Documented recent changes in the "resolver" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 176
diff changeset
1878 By default, nginx caches answers using the TTL value of a response.
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1879 An optional <literal>valid</literal> parameter allows to override it:
185
05e7496801ec Documented recent changes in the "resolver" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 176
diff changeset
1880 <example>
527
58d79f8c412d Documented 1.3.1 changes in "resolver".
Ruslan Ermilov <ru@nginx.com>
parents: 522
diff changeset
1881 resolver 127.0.0.1 [::1]:5353 valid=30s;
185
05e7496801ec Documented recent changes in the "resolver" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 176
diff changeset
1882 </example>
05e7496801ec Documented recent changes in the "resolver" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 176
diff changeset
1883 <note>
05e7496801ec Documented recent changes in the "resolver" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 176
diff changeset
1884 Before version 1.1.9, tuning of caching time was not possible,
05e7496801ec Documented recent changes in the "resolver" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 176
diff changeset
1885 and nginx always cached answers for the duration of 5 minutes.
05e7496801ec Documented recent changes in the "resolver" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 176
diff changeset
1886 </note>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1887 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1888
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1889 </directive>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1890
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1891
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1892 <directive name="resolver_timeout">
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1893 <syntax><value>time</value></syntax>
102
c76a257f3fd4 The directive name is now automatically printed in <default> and <syntax>.
Ruslan Ermilov <ru@nginx.com>
parents: 98
diff changeset
1894 <default>30s</default>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1895 <context>http</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1896 <context>server</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1897 <context>location</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1898
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1899 <para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1900 Sets a timeout for name resolution, for example:
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1901 <example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1902 resolver_timeout 5s;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1903 </example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1904 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1905
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1906 </directive>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1907
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1908
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1909 <directive name="root">
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1910 <syntax><value>path</value></syntax>
102
c76a257f3fd4 The directive name is now automatically printed in <default> and <syntax>.
Ruslan Ermilov <ru@nginx.com>
parents: 98
diff changeset
1911 <default>html</default>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1912 <context>http</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1913 <context>server</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1914 <context>location</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1915 <context>if in location</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1916
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1917 <para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1918 Sets the root directory for requests.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1919 For example, with the following configuration
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1920 <example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1921 location /i/ {
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1922 root /data/w3;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1923 }
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1924 </example>
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1925 “<literal>/i/top.gif</literal>” will be responded
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1926 with the file
148
682163f2b298 Unified article/path and module/pathname into a single "path".
Ruslan Ermilov <ru@nginx.com>
parents: 147
diff changeset
1927 <path>/data/w3/i/top.gif</path>.
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1928 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1929
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1930 <para>
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1931 The <value>path</value> value can contain variables
69
935beaa561b3 - use of $document_root and $realpath_root in "root" is prohibited
Ruslan Ermilov <ru@nginx.com>
parents: 68
diff changeset
1932 except <var>$document_root</var> and <var>$realpath_root</var>.
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1933 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1934
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1935 <para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1936 A path to the file is constructed by merely adding a URI to the value
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1937 of the <literal>root</literal> directive.
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1938 If a URI need to be modified, the
106
56457a474903 If text of the link is not provided, the @id is used.
Ruslan Ermilov <ru@nginx.com>
parents: 102
diff changeset
1939 <link id="alias"/> directive should be used.
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1940 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1941
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1942 </directive>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1943
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1944
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1945 <directive name="satisfy">
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1946 <syntax><literal>all</literal> | <literal>any</literal></syntax>
102
c76a257f3fd4 The directive name is now automatically printed in <default> and <syntax>.
Ruslan Ermilov <ru@nginx.com>
parents: 98
diff changeset
1947 <default>all</default>
69
935beaa561b3 - use of $document_root and $realpath_root in "root" is prohibited
Ruslan Ermilov <ru@nginx.com>
parents: 68
diff changeset
1948 <context>http</context>
935beaa561b3 - use of $document_root and $realpath_root in "root" is prohibited
Ruslan Ermilov <ru@nginx.com>
parents: 68
diff changeset
1949 <context>server</context>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1950 <context>location</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1951
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1952 <para>
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1953 Allows access if <literal>all</literal> or <literal>any</literal> of the
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1954 <link doc="ngx_http_access_module.xml">ngx_http_access_module</link>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1955 or <link doc="ngx_http_auth_basic_module.xml">ngx_http_auth_basic_module</link>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1956 modules grant access.
246
6bfacf7124c6 Minor tweaks.
Ruslan Ermilov <ru@nginx.com>
parents: 244
diff changeset
1957 </para>
6bfacf7124c6 Minor tweaks.
Ruslan Ermilov <ru@nginx.com>
parents: 244
diff changeset
1958
6bfacf7124c6 Minor tweaks.
Ruslan Ermilov <ru@nginx.com>
parents: 244
diff changeset
1959 <para>
6bfacf7124c6 Minor tweaks.
Ruslan Ermilov <ru@nginx.com>
parents: 244
diff changeset
1960 Example:
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1961 <example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1962 location / {
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1963 satisfy any;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1964
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1965 allow 192.168.1.0/32;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1966 deny all;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1967
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1968 auth_basic "closed site";
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1969 auth_basic_user_file conf/htpasswd;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1970 }
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1971 </example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1972 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1973
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1974 </directive>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1975
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1976
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1977 <directive name="satisfy_any">
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1978 <syntax><literal>on</literal> | <literal>off</literal></syntax>
102
c76a257f3fd4 The directive name is now automatically printed in <default> and <syntax>.
Ruslan Ermilov <ru@nginx.com>
parents: 98
diff changeset
1979 <default>off</default>
69
935beaa561b3 - use of $document_root and $realpath_root in "root" is prohibited
Ruslan Ermilov <ru@nginx.com>
parents: 68
diff changeset
1980 <context>http</context>
935beaa561b3 - use of $document_root and $realpath_root in "root" is prohibited
Ruslan Ermilov <ru@nginx.com>
parents: 68
diff changeset
1981 <context>server</context>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1982 <context>location</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1983
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1984 <para>
406
98dac2bd7598 Links with mixed underscores and spaces were hard to read, eliminated them.
Ruslan Ermilov <ru@nginx.com>
parents: 400
diff changeset
1985 This directive has been replaced by the <literal>any</literal>
98dac2bd7598 Links with mixed underscores and spaces were hard to read, eliminated them.
Ruslan Ermilov <ru@nginx.com>
parents: 400
diff changeset
1986 parameter of the <link id="satisfy"/> directive.
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1987 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1988
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1989 </directive>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1990
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1991
176
0883fc5aabc9 Documented the "keepalive_disable" and "send_lowat" directives.
Ruslan Ermilov <ru@nginx.com>
parents: 175
diff changeset
1992 <directive name="send_lowat">
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
1993 <syntax><value>size</value></syntax>
176
0883fc5aabc9 Documented the "keepalive_disable" and "send_lowat" directives.
Ruslan Ermilov <ru@nginx.com>
parents: 175
diff changeset
1994 <default>0</default>
0883fc5aabc9 Documented the "keepalive_disable" and "send_lowat" directives.
Ruslan Ermilov <ru@nginx.com>
parents: 175
diff changeset
1995 <context>http</context>
0883fc5aabc9 Documented the "keepalive_disable" and "send_lowat" directives.
Ruslan Ermilov <ru@nginx.com>
parents: 175
diff changeset
1996 <context>server</context>
0883fc5aabc9 Documented the "keepalive_disable" and "send_lowat" directives.
Ruslan Ermilov <ru@nginx.com>
parents: 175
diff changeset
1997 <context>location</context>
0883fc5aabc9 Documented the "keepalive_disable" and "send_lowat" directives.
Ruslan Ermilov <ru@nginx.com>
parents: 175
diff changeset
1998
0883fc5aabc9 Documented the "keepalive_disable" and "send_lowat" directives.
Ruslan Ermilov <ru@nginx.com>
parents: 175
diff changeset
1999 <para>
0883fc5aabc9 Documented the "keepalive_disable" and "send_lowat" directives.
Ruslan Ermilov <ru@nginx.com>
parents: 175
diff changeset
2000 If set to a non-zero value, nginx will try to minimize the number
0883fc5aabc9 Documented the "keepalive_disable" and "send_lowat" directives.
Ruslan Ermilov <ru@nginx.com>
parents: 175
diff changeset
2001 of send operations on client sockets by using either
553
6330ca27a485 Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents: 541
diff changeset
2002 <c-def>NOTE_LOWAT</c-def> flag of the
6330ca27a485 Translated "events" into English.
Ruslan Ermilov <ru@nginx.com>
parents: 541
diff changeset
2003 <link doc="../events.xml" id="kqueue"/> method,
176
0883fc5aabc9 Documented the "keepalive_disable" and "send_lowat" directives.
Ruslan Ermilov <ru@nginx.com>
parents: 175
diff changeset
2004 or the <c-def>SO_SNDLOWAT</c-def> socket option,
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
2005 with the specified <value>size</value>.
176
0883fc5aabc9 Documented the "keepalive_disable" and "send_lowat" directives.
Ruslan Ermilov <ru@nginx.com>
parents: 175
diff changeset
2006 </para>
0883fc5aabc9 Documented the "keepalive_disable" and "send_lowat" directives.
Ruslan Ermilov <ru@nginx.com>
parents: 175
diff changeset
2007
0883fc5aabc9 Documented the "keepalive_disable" and "send_lowat" directives.
Ruslan Ermilov <ru@nginx.com>
parents: 175
diff changeset
2008 <para>
0883fc5aabc9 Documented the "keepalive_disable" and "send_lowat" directives.
Ruslan Ermilov <ru@nginx.com>
parents: 175
diff changeset
2009 This directive is ignored on Linux, Solaris, and Windows.
0883fc5aabc9 Documented the "keepalive_disable" and "send_lowat" directives.
Ruslan Ermilov <ru@nginx.com>
parents: 175
diff changeset
2010 </para>
0883fc5aabc9 Documented the "keepalive_disable" and "send_lowat" directives.
Ruslan Ermilov <ru@nginx.com>
parents: 175
diff changeset
2011
0883fc5aabc9 Documented the "keepalive_disable" and "send_lowat" directives.
Ruslan Ermilov <ru@nginx.com>
parents: 175
diff changeset
2012 </directive>
0883fc5aabc9 Documented the "keepalive_disable" and "send_lowat" directives.
Ruslan Ermilov <ru@nginx.com>
parents: 175
diff changeset
2013
0883fc5aabc9 Documented the "keepalive_disable" and "send_lowat" directives.
Ruslan Ermilov <ru@nginx.com>
parents: 175
diff changeset
2014
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2015 <directive name="send_timeout">
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
2016 <syntax><value>time</value></syntax>
102
c76a257f3fd4 The directive name is now automatically printed in <default> and <syntax>.
Ruslan Ermilov <ru@nginx.com>
parents: 98
diff changeset
2017 <default>60s</default>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2018 <context>http</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2019 <context>server</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2020 <context>location</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2021
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2022 <para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2023 Sets a timeout for transmitting a response to the client.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2024 A timeout is only set between two successive write operations,
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2025 not for the transmission of the whole response.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2026 If a client does not receive anything within this time,
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2027 a connection is closed.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2028 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2029
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2030 </directive>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2031
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2032
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2033 <directive name="sendfile">
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2034
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
2035 <syntax><literal>on</literal> | <literal>off</literal></syntax>
102
c76a257f3fd4 The directive name is now automatically printed in <default> and <syntax>.
Ruslan Ermilov <ru@nginx.com>
parents: 98
diff changeset
2036 <default>off</default>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2037 <context>http</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2038 <context>server</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2039 <context>location</context>
69
935beaa561b3 - use of $document_root and $realpath_root in "root" is prohibited
Ruslan Ermilov <ru@nginx.com>
parents: 68
diff changeset
2040 <context>if in location</context>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2041
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2042 <para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2043 Enables or disables the use of
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2044 <c-func>sendfile</c-func>.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2045 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2046
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2047 </directive>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2048
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2049
175
3381ae6a93e4 Documented the max_ranges, postpone_output, and sendfile_max_chunk directives.
Ruslan Ermilov <ru@nginx.com>
parents: 174
diff changeset
2050 <directive name="sendfile_max_chunk">
3381ae6a93e4 Documented the max_ranges, postpone_output, and sendfile_max_chunk directives.
Ruslan Ermilov <ru@nginx.com>
parents: 174
diff changeset
2051
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
2052 <syntax><value>size</value></syntax>
175
3381ae6a93e4 Documented the max_ranges, postpone_output, and sendfile_max_chunk directives.
Ruslan Ermilov <ru@nginx.com>
parents: 174
diff changeset
2053 <default>0</default>
3381ae6a93e4 Documented the max_ranges, postpone_output, and sendfile_max_chunk directives.
Ruslan Ermilov <ru@nginx.com>
parents: 174
diff changeset
2054 <context>http</context>
3381ae6a93e4 Documented the max_ranges, postpone_output, and sendfile_max_chunk directives.
Ruslan Ermilov <ru@nginx.com>
parents: 174
diff changeset
2055 <context>server</context>
3381ae6a93e4 Documented the max_ranges, postpone_output, and sendfile_max_chunk directives.
Ruslan Ermilov <ru@nginx.com>
parents: 174
diff changeset
2056 <context>location</context>
3381ae6a93e4 Documented the max_ranges, postpone_output, and sendfile_max_chunk directives.
Ruslan Ermilov <ru@nginx.com>
parents: 174
diff changeset
2057
3381ae6a93e4 Documented the max_ranges, postpone_output, and sendfile_max_chunk directives.
Ruslan Ermilov <ru@nginx.com>
parents: 174
diff changeset
2058 <para>
3381ae6a93e4 Documented the max_ranges, postpone_output, and sendfile_max_chunk directives.
Ruslan Ermilov <ru@nginx.com>
parents: 174
diff changeset
2059 When set to a non-zero value, limits the amount of data that can be
3381ae6a93e4 Documented the max_ranges, postpone_output, and sendfile_max_chunk directives.
Ruslan Ermilov <ru@nginx.com>
parents: 174
diff changeset
2060 transferred in a single <c-func>sendfile</c-func> call.
3381ae6a93e4 Documented the max_ranges, postpone_output, and sendfile_max_chunk directives.
Ruslan Ermilov <ru@nginx.com>
parents: 174
diff changeset
2061 Without the limit, one fast connection may seize the worker process.
3381ae6a93e4 Documented the max_ranges, postpone_output, and sendfile_max_chunk directives.
Ruslan Ermilov <ru@nginx.com>
parents: 174
diff changeset
2062 </para>
3381ae6a93e4 Documented the max_ranges, postpone_output, and sendfile_max_chunk directives.
Ruslan Ermilov <ru@nginx.com>
parents: 174
diff changeset
2063
3381ae6a93e4 Documented the max_ranges, postpone_output, and sendfile_max_chunk directives.
Ruslan Ermilov <ru@nginx.com>
parents: 174
diff changeset
2064 </directive>
3381ae6a93e4 Documented the max_ranges, postpone_output, and sendfile_max_chunk directives.
Ruslan Ermilov <ru@nginx.com>
parents: 174
diff changeset
2065
3381ae6a93e4 Documented the max_ranges, postpone_output, and sendfile_max_chunk directives.
Ruslan Ermilov <ru@nginx.com>
parents: 174
diff changeset
2066
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2067 <directive name="server">
108
72524ae53106 Explicitly marked directives with the block syntax. Such directives will
Ruslan Ermilov <ru@nginx.com>
parents: 106
diff changeset
2068 <syntax block="yes"/>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2069 <default/>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2070 <context>http</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2071
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2072 <para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2073 Sets a configuration for the virtual server.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2074 There is no clean separation between IP-based (based on the IP address)
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2075 and name-based (based on the <header>Host</header> request header field)
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2076 virtual servers.
106
56457a474903 If text of the link is not provided, the @id is used.
Ruslan Ermilov <ru@nginx.com>
parents: 102
diff changeset
2077 Instead, the <link id="listen"/> directives describe all
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2078 addresses and ports that should accept connections for a server, and the
106
56457a474903 If text of the link is not provided, the @id is used.
Ruslan Ermilov <ru@nginx.com>
parents: 102
diff changeset
2079 <link id="server_name"/> directive lists all server names.
522
ef11546f75ee Translated "request_processing" into Russian, removed "virtual_hosts"
Ruslan Ermilov <ru@nginx.com>
parents: 506
diff changeset
2080 Example configurations are provided in the
ef11546f75ee Translated "request_processing" into Russian, removed "virtual_hosts"
Ruslan Ermilov <ru@nginx.com>
parents: 506
diff changeset
2081 “<link doc="request_processing.xml"/>” document.
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2082 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2083
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2084 </directive>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2085
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2086
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2087 <directive name="server_name">
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
2088 <syntax><value>name</value> ...</syntax>
102
c76a257f3fd4 The directive name is now automatically printed in <default> and <syntax>.
Ruslan Ermilov <ru@nginx.com>
parents: 98
diff changeset
2089 <default>""</default>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2090 <context>server</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2091
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2092 <para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2093 Sets names of the virtual server, for example:
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2094 <example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2095 server {
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2096 server_name example.com www.example.com;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2097 }
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2098 </example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2099 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2100
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2101 <para>
70
272d99af0c15 The "server_name" directive:
Ruslan Ermilov <ru@nginx.com>
parents: 69
diff changeset
2102 The first name becomes the primary server name.
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
2103 Server names can include an asterisk (“<literal>*</literal>”)
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2104 to replace the first or last part of a name:
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2105 <example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2106 server {
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2107 server_name example.com *.example.com www.example.*;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2108 }
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2109 </example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2110 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2111
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2112 <para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2113 The first two of the above mentioned names can be combined:
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2114 <example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2115 server {
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2116 server_name .example.com;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2117 }
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2118 </example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2119 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2120
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2121 <para>
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
2122 If the parameter equals “<var>$hostname</var>” (0.9.4), the
70
272d99af0c15 The "server_name" directive:
Ruslan Ermilov <ru@nginx.com>
parents: 69
diff changeset
2123 machine's hostname is substituted.
272d99af0c15 The "server_name" directive:
Ruslan Ermilov <ru@nginx.com>
parents: 69
diff changeset
2124 </para>
272d99af0c15 The "server_name" directive:
Ruslan Ermilov <ru@nginx.com>
parents: 69
diff changeset
2125
272d99af0c15 The "server_name" directive:
Ruslan Ermilov <ru@nginx.com>
parents: 69
diff changeset
2126 <para>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2127 It is also possible to use regular expressions in server names,
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
2128 prepending the name with a tilde (“<literal>~</literal>”):
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2129 <example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2130 server {
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2131 server_name www.example.com ~^www\d+\.example\.com$;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2132 }
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2133 </example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2134 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2135
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2136 <para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2137 Regular expressions can contain captures (0.7.40) that can later
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2138 be used in other directives:
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2139 <example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2140 server {
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2141 server_name ~^(www\.)?(.+)$;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2142
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2143 location / {
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2144 root /sites/$2;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2145 }
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2146 }
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2147
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2148 server {
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2149 server_name _;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2150
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2151 location / {
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2152 root /sites/default;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2153 }
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2154 }
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2155 </example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2156 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2157
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2158 <para>
70
272d99af0c15 The "server_name" directive:
Ruslan Ermilov <ru@nginx.com>
parents: 69
diff changeset
2159 Named captures in regular expressions create variables (0.8.25)
272d99af0c15 The "server_name" directive:
Ruslan Ermilov <ru@nginx.com>
parents: 69
diff changeset
2160 that can later be used in other directives:
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2161 <example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2162 server {
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2163 server_name ~^(www\.)?(?&lt;domain&gt;.+)$;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2164
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2165 location / {
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2166 root /sites/$domain;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2167 }
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2168 }
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2169
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2170 server {
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2171 server_name _;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2172
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2173 location / {
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2174 root /sites/default;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2175 }
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2176 }
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2177 </example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2178 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2179
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2180 <para>
70
272d99af0c15 The "server_name" directive:
Ruslan Ermilov <ru@nginx.com>
parents: 69
diff changeset
2181 It is also possible to specify an empty server name (0.7.11):
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2182 <example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2183 server {
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2184 server_name www.example.com "";
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2185 }
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2186 </example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2187 It allows this server to process requests without the <header>Host</header>
235
6d8356490215 Consistently call header fields as such.
Ruslan Ermilov <ru@nginx.com>
parents: 234
diff changeset
2188 header field, instead of the default server for the given address:port pair.
70
272d99af0c15 The "server_name" directive:
Ruslan Ermilov <ru@nginx.com>
parents: 69
diff changeset
2189 This is the default setting.
272d99af0c15 The "server_name" directive:
Ruslan Ermilov <ru@nginx.com>
parents: 69
diff changeset
2190 <note>
272d99af0c15 The "server_name" directive:
Ruslan Ermilov <ru@nginx.com>
parents: 69
diff changeset
2191 Before 0.8.48, the machine's hostname was used by default.
272d99af0c15 The "server_name" directive:
Ruslan Ermilov <ru@nginx.com>
parents: 69
diff changeset
2192 </note>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2193 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2194
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2195 <para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2196 The name checking order is as follows:
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2197 <list type="enum">
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2198
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2199 <listitem>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2200 full names
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2201 </listitem>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2202
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2203 <listitem>
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
2204 names with the prefix mask, e.g. “<literal>*.example.com</literal>”
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2205 </listitem>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2206
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2207 <listitem>
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
2208 names with the suffix mask, e.g. “<literal>mail.*</literal>”
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2209 </listitem>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2210
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2211 <listitem>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2212 regular expressions
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2213 </listitem>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2214
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2215 </list>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2216 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2217
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2218 </directive>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2219
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2220
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2221 <directive name="server_name_in_redirect">
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
2222 <syntax><literal>on</literal> | <literal>off</literal></syntax>
102
c76a257f3fd4 The directive name is now automatically printed in <default> and <syntax>.
Ruslan Ermilov <ru@nginx.com>
parents: 98
diff changeset
2223 <default>off</default>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2224 <context>http</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2225 <context>server</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2226 <context>location</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2227
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2228 <para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2229 Enables or disables the use of the primary server name, specified by the
106
56457a474903 If text of the link is not provided, the @id is used.
Ruslan Ermilov <ru@nginx.com>
parents: 102
diff changeset
2230 <link id="server_name"/>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2231 directive, in redirects issued by nginx.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2232 When disabled, the name from the <header>Host</header> request header field
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2233 is used.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2234 If this field is not present, an IP address of the server is used.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2235 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2236
159
8c124aef0041 Cross-linked "server_name_in_redirect" and "port_in_redirect" directives.
Ruslan Ermilov <ru@nginx.com>
parents: 152
diff changeset
2237 <para>
8c124aef0041 Cross-linked "server_name_in_redirect" and "port_in_redirect" directives.
Ruslan Ermilov <ru@nginx.com>
parents: 152
diff changeset
2238 See also the <link id="port_in_redirect"/> directive.
8c124aef0041 Cross-linked "server_name_in_redirect" and "port_in_redirect" directives.
Ruslan Ermilov <ru@nginx.com>
parents: 152
diff changeset
2239 </para>
8c124aef0041 Cross-linked "server_name_in_redirect" and "port_in_redirect" directives.
Ruslan Ermilov <ru@nginx.com>
parents: 152
diff changeset
2240
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2241 </directive>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2242
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2243
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2244 <directive name="server_names_hash_bucket_size">
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
2245 <syntax><value>size</value></syntax>
102
c76a257f3fd4 The directive name is now automatically printed in <default> and <syntax>.
Ruslan Ermilov <ru@nginx.com>
parents: 98
diff changeset
2246 <default>32|64|128</default>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2247 <context>http</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2248
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2249 <para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2250 Sets the bucket size for the server names hash tables.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2251 Default value depends on the size of the processor's cache line.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2252 For more information, please refer to
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2253 <link doc="../hash.xml">Setting Up Hashes</link>.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2254 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2255
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2256 </directive>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2257
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2258
82
89c31b453d40 Sorted directives alphabetically.
Ruslan Ermilov <ru@nginx.com>
parents: 72
diff changeset
2259 <directive name="server_names_hash_max_size">
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
2260 <syntax><value>size</value></syntax>
102
c76a257f3fd4 The directive name is now automatically printed in <default> and <syntax>.
Ruslan Ermilov <ru@nginx.com>
parents: 98
diff changeset
2261 <default>512</default>
82
89c31b453d40 Sorted directives alphabetically.
Ruslan Ermilov <ru@nginx.com>
parents: 72
diff changeset
2262 <context>http</context>
89c31b453d40 Sorted directives alphabetically.
Ruslan Ermilov <ru@nginx.com>
parents: 72
diff changeset
2263
89c31b453d40 Sorted directives alphabetically.
Ruslan Ermilov <ru@nginx.com>
parents: 72
diff changeset
2264 <para>
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
2265 Sets the maximum <value>size</value> of the server names hash tables.
82
89c31b453d40 Sorted directives alphabetically.
Ruslan Ermilov <ru@nginx.com>
parents: 72
diff changeset
2266 For more information, please refer to
89c31b453d40 Sorted directives alphabetically.
Ruslan Ermilov <ru@nginx.com>
parents: 72
diff changeset
2267 <link doc="../hash.xml">Setting Up Hashes</link>.
89c31b453d40 Sorted directives alphabetically.
Ruslan Ermilov <ru@nginx.com>
parents: 72
diff changeset
2268 </para>
89c31b453d40 Sorted directives alphabetically.
Ruslan Ermilov <ru@nginx.com>
parents: 72
diff changeset
2269
89c31b453d40 Sorted directives alphabetically.
Ruslan Ermilov <ru@nginx.com>
parents: 72
diff changeset
2270 </directive>
89c31b453d40 Sorted directives alphabetically.
Ruslan Ermilov <ru@nginx.com>
parents: 72
diff changeset
2271
89c31b453d40 Sorted directives alphabetically.
Ruslan Ermilov <ru@nginx.com>
parents: 72
diff changeset
2272
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2273 <directive name="server_tokens">
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
2274 <syntax><literal>on</literal> | <literal>off</literal></syntax>
102
c76a257f3fd4 The directive name is now automatically printed in <default> and <syntax>.
Ruslan Ermilov <ru@nginx.com>
parents: 98
diff changeset
2275 <default>on</default>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2276 <context>http</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2277 <context>server</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2278 <context>location</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2279
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2280 <para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2281 Enables or disables emitting of nginx version in error messages and in the
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2282 <header>Server</header> response header field.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2283 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2284
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2285 </directive>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2286
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2287
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2288 <directive name="tcp_nodelay">
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
2289 <syntax><literal>on</literal> | <literal>off</literal></syntax>
102
c76a257f3fd4 The directive name is now automatically printed in <default> and <syntax>.
Ruslan Ermilov <ru@nginx.com>
parents: 98
diff changeset
2290 <default>on</default>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2291 <context>http</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2292 <context>server</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2293 <context>location</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2294
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2295 <para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2296 Enables or disables the use of the <c-def>TCP_NODELAY</c-def> option.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2297 The option is enabled only when a connection is transitioned into the
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2298 keep-alive state.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2299 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2300
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2301 </directive>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2302
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2303
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2304 <directive name="tcp_nopush">
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
2305 <syntax><literal>on</literal> | <literal>off</literal></syntax>
102
c76a257f3fd4 The directive name is now automatically printed in <default> and <syntax>.
Ruslan Ermilov <ru@nginx.com>
parents: 98
diff changeset
2306 <default>off</default>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2307 <context>http</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2308 <context>server</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2309 <context>location</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2310
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2311 <para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2312 Enables or disables the use of
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2313 the <c-def>TCP_NOPUSH</c-def> socket option on FreeBSD
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2314 or the <c-def>TCP_CORK</c-def> socket option on Linux.
106
56457a474903 If text of the link is not provided, the @id is used.
Ruslan Ermilov <ru@nginx.com>
parents: 102
diff changeset
2315 Options are enabled only when <link id="sendfile"/> is used.
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2316 Enabling the option allows to
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2317 <list type="bullet">
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2318
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2319 <listitem>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2320 send the response header and the beginning of a file in one packet,
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2321 on Linux and FreeBSD&nbsp;4.*;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2322 </listitem>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2323
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2324 <listitem>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2325 send a file in full packets.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2326 </listitem>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2327
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2328 </list>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2329 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2330
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2331 </directive>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2332
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2333
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2334 <directive name="try_files">
364
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 318
diff changeset
2335 <syntax><value>file</value> ... <value>uri</value></syntax>
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 318
diff changeset
2336 <syntax><value>file</value> ... =<value>code</value></syntax>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2337 <default/>
72
0987079ad08f - "try_files" can be specified in the "server" context,
Ruslan Ermilov <ru@nginx.com>
parents: 70
diff changeset
2338 <context>server</context>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2339 <context>location</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2340
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2341 <para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2342 Checks the existence of files in the specified order, and uses
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2343 the first found file for request processing; the processing
72
0987079ad08f - "try_files" can be specified in the "server" context,
Ruslan Ermilov <ru@nginx.com>
parents: 70
diff changeset
2344 is performed in the current context.
174
69c131b0ebe0 Rephrased a sentence about "try_files" so that "alias" isn't called a prefix.
Ruslan Ermilov <ru@nginx.com>
parents: 173
diff changeset
2345 A path to the file is constructed from the
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
2346 <value>file</value> parameter
174
69c131b0ebe0 Rephrased a sentence about "try_files" so that "alias" isn't called a prefix.
Ruslan Ermilov <ru@nginx.com>
parents: 173
diff changeset
2347 according to the
69c131b0ebe0 Rephrased a sentence about "try_files" so that "alias" isn't called a prefix.
Ruslan Ermilov <ru@nginx.com>
parents: 173
diff changeset
2348 <link id="root"/> and <link id="alias"/> directives.
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2349 It is possible to check the directory existence by specifying
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
2350 a slash at the end of a name, e.g. “<literal>$uri/</literal>”.
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2351 If none of the files were found, an internal redirect to the
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
2352 <value>uri</value> specified by the last parameter is made.
173
6b81a1950ecb Improved on "try_files" documentation:
Ruslan Ermilov <ru@nginx.com>
parents: 172
diff changeset
2353 For example:
6b81a1950ecb Improved on "try_files" documentation:
Ruslan Ermilov <ru@nginx.com>
parents: 172
diff changeset
2354 <example>
6b81a1950ecb Improved on "try_files" documentation:
Ruslan Ermilov <ru@nginx.com>
parents: 172
diff changeset
2355 location /images/ {
6b81a1950ecb Improved on "try_files" documentation:
Ruslan Ermilov <ru@nginx.com>
parents: 172
diff changeset
2356 try_files $uri /images/default.gif;
6b81a1950ecb Improved on "try_files" documentation:
Ruslan Ermilov <ru@nginx.com>
parents: 172
diff changeset
2357 }
6b81a1950ecb Improved on "try_files" documentation:
Ruslan Ermilov <ru@nginx.com>
parents: 172
diff changeset
2358
6b81a1950ecb Improved on "try_files" documentation:
Ruslan Ermilov <ru@nginx.com>
parents: 172
diff changeset
2359 location = /images/default.gif {
6b81a1950ecb Improved on "try_files" documentation:
Ruslan Ermilov <ru@nginx.com>
parents: 172
diff changeset
2360 expires 30s;
6b81a1950ecb Improved on "try_files" documentation:
Ruslan Ermilov <ru@nginx.com>
parents: 172
diff changeset
2361 }
6b81a1950ecb Improved on "try_files" documentation:
Ruslan Ermilov <ru@nginx.com>
parents: 172
diff changeset
2362 </example>
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
2363 The last parameter can also point to a named location,
173
6b81a1950ecb Improved on "try_files" documentation:
Ruslan Ermilov <ru@nginx.com>
parents: 172
diff changeset
2364 see examples below.
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
2365 As of version 0.7.51, the last parameter can also be a
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
2366 <value>code</value>:
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2367 <example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2368 location / {
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2369 try_files $uri $uri/index.html $uri.html =404;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2370 }
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2371 </example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2372 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2373
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2374 <para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2375 Example when proxying Mongrel:
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2376 <example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2377 location / {
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2378 try_files /system/maintenance.html
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2379 $uri $uri/index.html $uri.html
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2380 @mongrel;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2381 }
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2382
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2383 location @mongrel {
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2384 proxy_pass http://mongrel;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2385 }
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2386 </example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2387 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2388
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2389 <para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2390 Example for Drupal/FastCGI:
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2391 <example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2392 location / {
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2393 try_files $uri $uri/ @drupal;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2394 }
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2395
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2396 location ~ \.php$ {
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2397 try_files $uri @drupal;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2398
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2399 fastcgi_pass ...;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2400
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2401 fastcgi_param SCRIPT_FILENAME /path/to$fastcgi_script_name;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2402 fastcgi_param SCRIPT_NAME $fastcgi_script_name;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2403 fastcgi_param QUERY_STRING $args;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2404
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2405 ... other fastcgi_param's
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2406 }
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2407
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2408 location @drupal {
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2409 fastcgi_pass ...;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2410
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2411 fastcgi_param SCRIPT_FILENAME /path/to/index.php;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2412 fastcgi_param SCRIPT_NAME /index.php;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2413 fastcgi_param QUERY_STRING q=$uri&amp;$args;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2414
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2415 ... other fastcgi_param's
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2416 }
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2417 </example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2418 In the following example,
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2419 <example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2420 location / {
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2421 try_files $uri $uri/ @drupal;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2422 }
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2423 </example>
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
2424 the <literal>try_files</literal> directive is equivalent to
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2425 <example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2426 location / {
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2427 error_page 404 = @drupal;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2428 log_not_found off;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2429 }
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2430 </example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2431 And here,
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2432 <example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2433 location ~ \.php$ {
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2434 try_files $uri @drupal;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2435
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2436 fastcgi_pass ...;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2437
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2438 fastcgi_param SCRIPT_FILENAME /path/to$fastcgi_script_name;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2439
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2440 ...
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2441 }
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2442 </example>
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
2443 <literal>try_files</literal> checks the existence of the PHP file
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2444 before passing the request to the FastCGI server.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2445 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2446
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2447 <para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2448 Example for Wordpress and Joomla:
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2449 <example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2450 location / {
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2451 try_files $uri $uri/ @wordpress;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2452 }
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2453
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2454 location ~ \.php$ {
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2455 try_files $uri @wordpress;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2456
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2457 fastcgi_pass ...;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2458
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2459 fastcgi_param SCRIPT_FILENAME /path/to$fastcgi_script_name;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2460 ... other fastcgi_param's
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2461 }
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2462
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2463 location @wordpress {
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2464 fastcgi_pass ...;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2465
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2466 fastcgi_param SCRIPT_FILENAME /path/to/index.php;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2467 ... other fastcgi_param's
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2468 }
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2469 </example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2470 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2471
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2472 </directive>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2473
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2474
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2475 <directive name="types">
108
72524ae53106 Explicitly marked directives with the block syntax. Such directives will
Ruslan Ermilov <ru@nginx.com>
parents: 106
diff changeset
2476 <syntax block="yes"/>
102
c76a257f3fd4 The directive name is now automatically printed in <default> and <syntax>.
Ruslan Ermilov <ru@nginx.com>
parents: 98
diff changeset
2477 <default>
c76a257f3fd4 The directive name is now automatically printed in <default> and <syntax>.
Ruslan Ermilov <ru@nginx.com>
parents: 98
diff changeset
2478 text/html html;
c76a257f3fd4 The directive name is now automatically printed in <default> and <syntax>.
Ruslan Ermilov <ru@nginx.com>
parents: 98
diff changeset
2479 image/gif gif;
c76a257f3fd4 The directive name is now automatically printed in <default> and <syntax>.
Ruslan Ermilov <ru@nginx.com>
parents: 98
diff changeset
2480 image/jpeg jpg;
c76a257f3fd4 The directive name is now automatically printed in <default> and <syntax>.
Ruslan Ermilov <ru@nginx.com>
parents: 98
diff changeset
2481 </default>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2482 <context>http</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2483 <context>server</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2484 <context>location</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2485
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2486 <para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2487 Maps file name extensions to MIME types of responses.
160
0b65e87daa8a Documented that filename extensions that map to MIME types are
Ruslan Ermilov <ru@nginx.com>
parents: 159
diff changeset
2488 Extensions are case-insensitive.
0b65e87daa8a Documented that filename extensions that map to MIME types are
Ruslan Ermilov <ru@nginx.com>
parents: 159
diff changeset
2489 Several extensions can map to one type, for example:
0b65e87daa8a Documented that filename extensions that map to MIME types are
Ruslan Ermilov <ru@nginx.com>
parents: 159
diff changeset
2490 <example>
0b65e87daa8a Documented that filename extensions that map to MIME types are
Ruslan Ermilov <ru@nginx.com>
parents: 159
diff changeset
2491 types {
0b65e87daa8a Documented that filename extensions that map to MIME types are
Ruslan Ermilov <ru@nginx.com>
parents: 159
diff changeset
2492 application/octet-stream bin exe dll;
0b65e87daa8a Documented that filename extensions that map to MIME types are
Ruslan Ermilov <ru@nginx.com>
parents: 159
diff changeset
2493 application/octet-stream deb;
0b65e87daa8a Documented that filename extensions that map to MIME types are
Ruslan Ermilov <ru@nginx.com>
parents: 159
diff changeset
2494 application/octet-stream dmg;
0b65e87daa8a Documented that filename extensions that map to MIME types are
Ruslan Ermilov <ru@nginx.com>
parents: 159
diff changeset
2495 }
0b65e87daa8a Documented that filename extensions that map to MIME types are
Ruslan Ermilov <ru@nginx.com>
parents: 159
diff changeset
2496 </example>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2497 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2498
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2499 <para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2500 A sufficiently full mapping table is distributed with nginx in the
148
682163f2b298 Unified article/path and module/pathname into a single "path".
Ruslan Ermilov <ru@nginx.com>
parents: 147
diff changeset
2501 <path>conf/mime.types</path> file.
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2502 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2503
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2504 <para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2505 To make a particular location emit the
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
2506 “<literal>application/octet-stream</literal>”
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2507 MIME type for all requests, try the following:
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2508 <example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2509 location /download/ {
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2510 types { }
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2511 default_type application/octet-stream;
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2512 }
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2513 </example>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2514 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2515
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2516 </directive>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2517
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2518
72
0987079ad08f - "try_files" can be specified in the "server" context,
Ruslan Ermilov <ru@nginx.com>
parents: 70
diff changeset
2519 <directive name="types_hash_bucket_size">
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
2520 <syntax><value>size</value></syntax>
102
c76a257f3fd4 The directive name is now automatically printed in <default> and <syntax>.
Ruslan Ermilov <ru@nginx.com>
parents: 98
diff changeset
2521 <default>32|64|128</default>
72
0987079ad08f - "try_files" can be specified in the "server" context,
Ruslan Ermilov <ru@nginx.com>
parents: 70
diff changeset
2522 <context>http</context>
0987079ad08f - "try_files" can be specified in the "server" context,
Ruslan Ermilov <ru@nginx.com>
parents: 70
diff changeset
2523 <context>server</context>
0987079ad08f - "try_files" can be specified in the "server" context,
Ruslan Ermilov <ru@nginx.com>
parents: 70
diff changeset
2524 <context>location</context>
0987079ad08f - "try_files" can be specified in the "server" context,
Ruslan Ermilov <ru@nginx.com>
parents: 70
diff changeset
2525
0987079ad08f - "try_files" can be specified in the "server" context,
Ruslan Ermilov <ru@nginx.com>
parents: 70
diff changeset
2526 <para>
0987079ad08f - "try_files" can be specified in the "server" context,
Ruslan Ermilov <ru@nginx.com>
parents: 70
diff changeset
2527 Sets the bucket size for the types hash tables.
0987079ad08f - "try_files" can be specified in the "server" context,
Ruslan Ermilov <ru@nginx.com>
parents: 70
diff changeset
2528 Default value depends on the size of the processor's cache line.
0987079ad08f - "try_files" can be specified in the "server" context,
Ruslan Ermilov <ru@nginx.com>
parents: 70
diff changeset
2529 For more information, please refer to
0987079ad08f - "try_files" can be specified in the "server" context,
Ruslan Ermilov <ru@nginx.com>
parents: 70
diff changeset
2530 <link doc="../hash.xml">Setting Up Hashes</link>.
0987079ad08f - "try_files" can be specified in the "server" context,
Ruslan Ermilov <ru@nginx.com>
parents: 70
diff changeset
2531 </para>
0987079ad08f - "try_files" can be specified in the "server" context,
Ruslan Ermilov <ru@nginx.com>
parents: 70
diff changeset
2532
0987079ad08f - "try_files" can be specified in the "server" context,
Ruslan Ermilov <ru@nginx.com>
parents: 70
diff changeset
2533 </directive>
0987079ad08f - "try_files" can be specified in the "server" context,
Ruslan Ermilov <ru@nginx.com>
parents: 70
diff changeset
2534
0987079ad08f - "try_files" can be specified in the "server" context,
Ruslan Ermilov <ru@nginx.com>
parents: 70
diff changeset
2535
0987079ad08f - "try_files" can be specified in the "server" context,
Ruslan Ermilov <ru@nginx.com>
parents: 70
diff changeset
2536 <directive name="types_hash_max_size">
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
2537 <syntax><value>size</value></syntax>
102
c76a257f3fd4 The directive name is now automatically printed in <default> and <syntax>.
Ruslan Ermilov <ru@nginx.com>
parents: 98
diff changeset
2538 <default>1024</default>
72
0987079ad08f - "try_files" can be specified in the "server" context,
Ruslan Ermilov <ru@nginx.com>
parents: 70
diff changeset
2539 <context>http</context>
0987079ad08f - "try_files" can be specified in the "server" context,
Ruslan Ermilov <ru@nginx.com>
parents: 70
diff changeset
2540 <context>server</context>
0987079ad08f - "try_files" can be specified in the "server" context,
Ruslan Ermilov <ru@nginx.com>
parents: 70
diff changeset
2541 <context>location</context>
0987079ad08f - "try_files" can be specified in the "server" context,
Ruslan Ermilov <ru@nginx.com>
parents: 70
diff changeset
2542
0987079ad08f - "try_files" can be specified in the "server" context,
Ruslan Ermilov <ru@nginx.com>
parents: 70
diff changeset
2543 <para>
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
2544 Sets the maximum <value>size</value> of the types hash tables.
72
0987079ad08f - "try_files" can be specified in the "server" context,
Ruslan Ermilov <ru@nginx.com>
parents: 70
diff changeset
2545 For more information, please refer to
0987079ad08f - "try_files" can be specified in the "server" context,
Ruslan Ermilov <ru@nginx.com>
parents: 70
diff changeset
2546 <link doc="../hash.xml">Setting Up Hashes</link>.
0987079ad08f - "try_files" can be specified in the "server" context,
Ruslan Ermilov <ru@nginx.com>
parents: 70
diff changeset
2547 </para>
0987079ad08f - "try_files" can be specified in the "server" context,
Ruslan Ermilov <ru@nginx.com>
parents: 70
diff changeset
2548
0987079ad08f - "try_files" can be specified in the "server" context,
Ruslan Ermilov <ru@nginx.com>
parents: 70
diff changeset
2549 </directive>
0987079ad08f - "try_files" can be specified in the "server" context,
Ruslan Ermilov <ru@nginx.com>
parents: 70
diff changeset
2550
0987079ad08f - "try_files" can be specified in the "server" context,
Ruslan Ermilov <ru@nginx.com>
parents: 70
diff changeset
2551
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2552 <directive name="underscores_in_headers">
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
2553 <syntax><literal>on</literal> | <literal>off</literal></syntax>
102
c76a257f3fd4 The directive name is now automatically printed in <default> and <syntax>.
Ruslan Ermilov <ru@nginx.com>
parents: 98
diff changeset
2554 <default>off</default>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2555 <context>http</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2556 <context>server</context>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2557
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2558 <para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2559 Enables or disables the use of underscores in client request header fields.
225
46ef98b7513f Expanded on the "underscores_in_headers" relation to "ignore_invalid_headers".
Ruslan Ermilov <ru@nginx.com>
parents: 223
diff changeset
2560 When disabled, request header fields whose names contain underscores are
46ef98b7513f Expanded on the "underscores_in_headers" relation to "ignore_invalid_headers".
Ruslan Ermilov <ru@nginx.com>
parents: 223
diff changeset
2561 marked as invalid and are subject to the <link id="ignore_invalid_headers"/>
46ef98b7513f Expanded on the "underscores_in_headers" relation to "ignore_invalid_headers".
Ruslan Ermilov <ru@nginx.com>
parents: 223
diff changeset
2562 directive.
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2563 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2564
426
1d6dc85ed324 Specifying "ignore_invalid_headers" or "underscores_in_headers" on the
Ruslan Ermilov <ru@nginx.com>
parents: 419
diff changeset
2565 <para>
442
b423d725a932 Try to emphasize that "underscores_in_headers" and "merge_slashes",
Ruslan Ermilov <ru@nginx.com>
parents: 438
diff changeset
2566 A directive can be specified on the <link id="server"/> level
b423d725a932 Try to emphasize that "underscores_in_headers" and "merge_slashes",
Ruslan Ermilov <ru@nginx.com>
parents: 438
diff changeset
2567 in a default server.
b423d725a932 Try to emphasize that "underscores_in_headers" and "merge_slashes",
Ruslan Ermilov <ru@nginx.com>
parents: 438
diff changeset
2568 In this case, its value will cover all virtual servers
b423d725a932 Try to emphasize that "underscores_in_headers" and "merge_slashes",
Ruslan Ermilov <ru@nginx.com>
parents: 438
diff changeset
2569 listening on the same address and port.
426
1d6dc85ed324 Specifying "ignore_invalid_headers" or "underscores_in_headers" on the
Ruslan Ermilov <ru@nginx.com>
parents: 419
diff changeset
2570 </para>
1d6dc85ed324 Specifying "ignore_invalid_headers" or "underscores_in_headers" on the
Ruslan Ermilov <ru@nginx.com>
parents: 419
diff changeset
2571
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2572 </directive>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2573
72
0987079ad08f - "try_files" can be specified in the "server" context,
Ruslan Ermilov <ru@nginx.com>
parents: 70
diff changeset
2574
0987079ad08f - "try_files" can be specified in the "server" context,
Ruslan Ermilov <ru@nginx.com>
parents: 70
diff changeset
2575 <directive name="variables_hash_bucket_size">
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
2576 <syntax><value>size</value></syntax>
102
c76a257f3fd4 The directive name is now automatically printed in <default> and <syntax>.
Ruslan Ermilov <ru@nginx.com>
parents: 98
diff changeset
2577 <default>64</default>
72
0987079ad08f - "try_files" can be specified in the "server" context,
Ruslan Ermilov <ru@nginx.com>
parents: 70
diff changeset
2578 <context>http</context>
0987079ad08f - "try_files" can be specified in the "server" context,
Ruslan Ermilov <ru@nginx.com>
parents: 70
diff changeset
2579
0987079ad08f - "try_files" can be specified in the "server" context,
Ruslan Ermilov <ru@nginx.com>
parents: 70
diff changeset
2580 <para>
0987079ad08f - "try_files" can be specified in the "server" context,
Ruslan Ermilov <ru@nginx.com>
parents: 70
diff changeset
2581 Sets the bucket size for the variables hash table.
0987079ad08f - "try_files" can be specified in the "server" context,
Ruslan Ermilov <ru@nginx.com>
parents: 70
diff changeset
2582 For more information, please refer to
0987079ad08f - "try_files" can be specified in the "server" context,
Ruslan Ermilov <ru@nginx.com>
parents: 70
diff changeset
2583 <link doc="../hash.xml">Setting Up Hashes</link>.
0987079ad08f - "try_files" can be specified in the "server" context,
Ruslan Ermilov <ru@nginx.com>
parents: 70
diff changeset
2584 </para>
0987079ad08f - "try_files" can be specified in the "server" context,
Ruslan Ermilov <ru@nginx.com>
parents: 70
diff changeset
2585
0987079ad08f - "try_files" can be specified in the "server" context,
Ruslan Ermilov <ru@nginx.com>
parents: 70
diff changeset
2586 </directive>
0987079ad08f - "try_files" can be specified in the "server" context,
Ruslan Ermilov <ru@nginx.com>
parents: 70
diff changeset
2587
0987079ad08f - "try_files" can be specified in the "server" context,
Ruslan Ermilov <ru@nginx.com>
parents: 70
diff changeset
2588
0987079ad08f - "try_files" can be specified in the "server" context,
Ruslan Ermilov <ru@nginx.com>
parents: 70
diff changeset
2589 <directive name="variables_hash_max_size">
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
2590 <syntax><value>size</value></syntax>
102
c76a257f3fd4 The directive name is now automatically printed in <default> and <syntax>.
Ruslan Ermilov <ru@nginx.com>
parents: 98
diff changeset
2591 <default>512</default>
72
0987079ad08f - "try_files" can be specified in the "server" context,
Ruslan Ermilov <ru@nginx.com>
parents: 70
diff changeset
2592 <context>http</context>
0987079ad08f - "try_files" can be specified in the "server" context,
Ruslan Ermilov <ru@nginx.com>
parents: 70
diff changeset
2593
0987079ad08f - "try_files" can be specified in the "server" context,
Ruslan Ermilov <ru@nginx.com>
parents: 70
diff changeset
2594 <para>
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
2595 Sets the maximum <value>size</value> of the variables hash table.
72
0987079ad08f - "try_files" can be specified in the "server" context,
Ruslan Ermilov <ru@nginx.com>
parents: 70
diff changeset
2596 For more information, please refer to
0987079ad08f - "try_files" can be specified in the "server" context,
Ruslan Ermilov <ru@nginx.com>
parents: 70
diff changeset
2597 <link doc="../hash.xml">Setting Up Hashes</link>.
0987079ad08f - "try_files" can be specified in the "server" context,
Ruslan Ermilov <ru@nginx.com>
parents: 70
diff changeset
2598 </para>
0987079ad08f - "try_files" can be specified in the "server" context,
Ruslan Ermilov <ru@nginx.com>
parents: 70
diff changeset
2599
0987079ad08f - "try_files" can be specified in the "server" context,
Ruslan Ermilov <ru@nginx.com>
parents: 70
diff changeset
2600 </directive>
0987079ad08f - "try_files" can be specified in the "server" context,
Ruslan Ermilov <ru@nginx.com>
parents: 70
diff changeset
2601
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2602 </section>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2603
364
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 318
diff changeset
2604
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2605 <section id="variables" name="Embedded Variables">
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2606
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2607 <para>
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
2608 The module <literal>ngx_http_core_module</literal> supports embedded variables
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
2609 with names matching those of the Apache Server.
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2610 First of all, these are variables representing client request header
82
89c31b453d40 Sorted directives alphabetically.
Ruslan Ermilov <ru@nginx.com>
parents: 72
diff changeset
2611 fields, such as <var>$http_user_agent</var>, <var>$http_cookie</var>,
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2612 and so on.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2613 It also supports other variables:
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2614 <list type="tag">
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2615
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
2616 <tag-name><var>$arg_</var><value>name</value></tag-name>
83
e8ed74d3fa0e Sorted variables alphabetically.
Ruslan Ermilov <ru@nginx.com>
parents: 82
diff changeset
2617 <tag-desc>
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
2618 argument <value>name</value> in the request line
83
e8ed74d3fa0e Sorted variables alphabetically.
Ruslan Ermilov <ru@nginx.com>
parents: 82
diff changeset
2619 </tag-desc>
e8ed74d3fa0e Sorted variables alphabetically.
Ruslan Ermilov <ru@nginx.com>
parents: 82
diff changeset
2620
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2621 <tag-name><var>$args</var></tag-name>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2622 <tag-desc>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2623 arguments in the request line
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2624 </tag-desc>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2625
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2626 <tag-name><var>$binary_remote_addr</var></tag-name>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2627 <tag-desc>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2628 client address in a binary form, value's length is always 4 bytes
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2629 </tag-desc>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2630
86
341dc6392e8a Documented $body_bytes_sent, $nginx_version, $request, and $sent_http_*.
Ruslan Ermilov <ru@nginx.com>
parents: 83
diff changeset
2631 <tag-name><var>$body_bytes_sent</var></tag-name>
341dc6392e8a Documented $body_bytes_sent, $nginx_version, $request, and $sent_http_*.
Ruslan Ermilov <ru@nginx.com>
parents: 83
diff changeset
2632 <tag-desc>
341dc6392e8a Documented $body_bytes_sent, $nginx_version, $request, and $sent_http_*.
Ruslan Ermilov <ru@nginx.com>
parents: 83
diff changeset
2633 number of bytes sent to a client, not counting the response header
341dc6392e8a Documented $body_bytes_sent, $nginx_version, $request, and $sent_http_*.
Ruslan Ermilov <ru@nginx.com>
parents: 83
diff changeset
2634 </tag-desc>
341dc6392e8a Documented $body_bytes_sent, $nginx_version, $request, and $sent_http_*.
Ruslan Ermilov <ru@nginx.com>
parents: 83
diff changeset
2635
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2636 <tag-name><var>$content_length</var></tag-name>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2637 <tag-desc>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2638 <header>Content-Length</header> request header field
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2639 </tag-desc>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2640
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2641 <tag-name><var>$content_type</var></tag-name>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2642 <tag-desc>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2643 <header>Content-Type</header> request header field
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2644 </tag-desc>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2645
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
2646 <tag-name><var>$cookie_</var><value>name</value></tag-name>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2647 <tag-desc>
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
2648 the <value>name</value> cookie
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2649 </tag-desc>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2650
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2651 <tag-name><var>$document_root</var></tag-name>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2652 <tag-desc>
436
3a9f39341c7c - Documented the "from" parameter of the "disable_symlinks" directive,
Ruslan Ermilov <ru@nginx.com>
parents: 429
diff changeset
2653 <link id="root"/> or <link id="alias"/> directive's value
3a9f39341c7c - Documented the "from" parameter of the "disable_symlinks" directive,
Ruslan Ermilov <ru@nginx.com>
parents: 429
diff changeset
2654 for the current request
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2655 </tag-desc>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2656
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2657 <tag-name><var>$document_uri</var></tag-name>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2658 <tag-desc>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2659 same as <var>$uri</var>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2660 </tag-desc>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2661
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2662 <tag-name><var>$host</var></tag-name>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2663 <tag-desc>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2664 <header>Host</header> request header field,
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2665 or the server name matching a request if this field is not present
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2666 </tag-desc>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2667
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2668 <tag-name><var>$hostname</var></tag-name>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2669 <tag-desc>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2670 host name
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2671 </tag-desc>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2672
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
2673 <tag-name><var>$http_</var><value>name</value></tag-name>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2674 <tag-desc>
448
92672f6f0ee1 Elaborated on $http_* and $sent_http_* syntax.
Ruslan Ermilov <ru@nginx.com>
parents: 442
diff changeset
2675 arbitrary request header field;
92672f6f0ee1 Elaborated on $http_* and $sent_http_* syntax.
Ruslan Ermilov <ru@nginx.com>
parents: 442
diff changeset
2676 the last part of a variable name is the field name converted
92672f6f0ee1 Elaborated on $http_* and $sent_http_* syntax.
Ruslan Ermilov <ru@nginx.com>
parents: 442
diff changeset
2677 to lower case with dashes replaced by underscores
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2678 </tag-desc>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2679
234
ad26f0ae970f Documented the $https variable.
Ruslan Ermilov <ru@nginx.com>
parents: 225
diff changeset
2680 <tag-name><var>$https</var></tag-name>
ad26f0ae970f Documented the $https variable.
Ruslan Ermilov <ru@nginx.com>
parents: 225
diff changeset
2681 <tag-desc>
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
2682 “<literal>on</literal>”
234
ad26f0ae970f Documented the $https variable.
Ruslan Ermilov <ru@nginx.com>
parents: 225
diff changeset
2683 if connection operates in SSL mode,
ad26f0ae970f Documented the $https variable.
Ruslan Ermilov <ru@nginx.com>
parents: 225
diff changeset
2684 or an empty string otherwise
ad26f0ae970f Documented the $https variable.
Ruslan Ermilov <ru@nginx.com>
parents: 225
diff changeset
2685 </tag-desc>
ad26f0ae970f Documented the $https variable.
Ruslan Ermilov <ru@nginx.com>
parents: 225
diff changeset
2686
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2687 <tag-name><var>$is_args</var></tag-name>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2688 <tag-desc>
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
2689 “<literal>?</literal>” if a request line has arguments,
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2690 or an empty string otherwise
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2691 </tag-desc>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2692
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2693 <tag-name><var>$limit_rate</var></tag-name>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2694 <tag-desc>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2695 allows for connection rate limiting
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2696 </tag-desc>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2697
86
341dc6392e8a Documented $body_bytes_sent, $nginx_version, $request, and $sent_http_*.
Ruslan Ermilov <ru@nginx.com>
parents: 83
diff changeset
2698 <tag-name><var>$nginx_version</var></tag-name>
341dc6392e8a Documented $body_bytes_sent, $nginx_version, $request, and $sent_http_*.
Ruslan Ermilov <ru@nginx.com>
parents: 83
diff changeset
2699 <tag-desc>
341dc6392e8a Documented $body_bytes_sent, $nginx_version, $request, and $sent_http_*.
Ruslan Ermilov <ru@nginx.com>
parents: 83
diff changeset
2700 nginx version
341dc6392e8a Documented $body_bytes_sent, $nginx_version, $request, and $sent_http_*.
Ruslan Ermilov <ru@nginx.com>
parents: 83
diff changeset
2701 </tag-desc>
341dc6392e8a Documented $body_bytes_sent, $nginx_version, $request, and $sent_http_*.
Ruslan Ermilov <ru@nginx.com>
parents: 83
diff changeset
2702
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2703 <tag-name><var>$pid</var></tag-name>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2704 <tag-desc>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2705 PID of the worker process
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2706 </tag-desc>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2707
83
e8ed74d3fa0e Sorted variables alphabetically.
Ruslan Ermilov <ru@nginx.com>
parents: 82
diff changeset
2708 <tag-name><var>$query_string</var></tag-name>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2709 <tag-desc>
83
e8ed74d3fa0e Sorted variables alphabetically.
Ruslan Ermilov <ru@nginx.com>
parents: 82
diff changeset
2710 same as <var>$args</var>
e8ed74d3fa0e Sorted variables alphabetically.
Ruslan Ermilov <ru@nginx.com>
parents: 82
diff changeset
2711 </tag-desc>
e8ed74d3fa0e Sorted variables alphabetically.
Ruslan Ermilov <ru@nginx.com>
parents: 82
diff changeset
2712
e8ed74d3fa0e Sorted variables alphabetically.
Ruslan Ermilov <ru@nginx.com>
parents: 82
diff changeset
2713 <tag-name><var>$realpath_root</var></tag-name>
e8ed74d3fa0e Sorted variables alphabetically.
Ruslan Ermilov <ru@nginx.com>
parents: 82
diff changeset
2714 <tag-desc>
436
3a9f39341c7c - Documented the "from" parameter of the "disable_symlinks" directive,
Ruslan Ermilov <ru@nginx.com>
parents: 429
diff changeset
2715 an absolute pathname corresponding to the
3a9f39341c7c - Documented the "from" parameter of the "disable_symlinks" directive,
Ruslan Ermilov <ru@nginx.com>
parents: 429
diff changeset
2716 <link id="root"/> or <link id="alias"/> directive's value
3a9f39341c7c - Documented the "from" parameter of the "disable_symlinks" directive,
Ruslan Ermilov <ru@nginx.com>
parents: 429
diff changeset
2717 for the current request,
3a9f39341c7c - Documented the "from" parameter of the "disable_symlinks" directive,
Ruslan Ermilov <ru@nginx.com>
parents: 429
diff changeset
2718 with all symbolic links resolved to real paths
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2719 </tag-desc>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2720
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2721 <tag-name><var>$remote_addr</var></tag-name>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2722 <tag-desc>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2723 client address
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2724 </tag-desc>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2725
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2726 <tag-name><var>$remote_port</var></tag-name>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2727 <tag-desc>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2728 client port
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2729 </tag-desc>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2730
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2731 <tag-name><var>$remote_user</var></tag-name>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2732 <tag-desc>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2733 user name supplied with the Basic authentication
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2734 </tag-desc>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2735
86
341dc6392e8a Documented $body_bytes_sent, $nginx_version, $request, and $sent_http_*.
Ruslan Ermilov <ru@nginx.com>
parents: 83
diff changeset
2736 <tag-name><var>$request</var></tag-name>
341dc6392e8a Documented $body_bytes_sent, $nginx_version, $request, and $sent_http_*.
Ruslan Ermilov <ru@nginx.com>
parents: 83
diff changeset
2737 <tag-desc>
341dc6392e8a Documented $body_bytes_sent, $nginx_version, $request, and $sent_http_*.
Ruslan Ermilov <ru@nginx.com>
parents: 83
diff changeset
2738 full original request line
341dc6392e8a Documented $body_bytes_sent, $nginx_version, $request, and $sent_http_*.
Ruslan Ermilov <ru@nginx.com>
parents: 83
diff changeset
2739 </tag-desc>
341dc6392e8a Documented $body_bytes_sent, $nginx_version, $request, and $sent_http_*.
Ruslan Ermilov <ru@nginx.com>
parents: 83
diff changeset
2740
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2741 <tag-name><var>$request_body</var></tag-name>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2742 <tag-desc>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2743 request body
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2744 <para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2745 The variable's value is made available in locations
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2746 processed by the
106
56457a474903 If text of the link is not provided, the @id is used.
Ruslan Ermilov <ru@nginx.com>
parents: 102
diff changeset
2747 <link doc="ngx_http_proxy_module.xml" id="proxy_pass"/>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2748 and
106
56457a474903 If text of the link is not provided, the @id is used.
Ruslan Ermilov <ru@nginx.com>
parents: 102
diff changeset
2749 <link doc="ngx_http_fastcgi_module.xml" id="fastcgi_pass"/>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2750 directives.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2751 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2752 </tag-desc>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2753
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2754 <tag-name><var>$request_body_file</var></tag-name>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2755 <tag-desc>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2756 name of a temporary file with the request body
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2757 <para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2758 At the end of processing, the file needs to be removed.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2759 To always write a request body to a file,
406
98dac2bd7598 Links with mixed underscores and spaces were hard to read, eliminated them.
Ruslan Ermilov <ru@nginx.com>
parents: 400
diff changeset
2760 <link id="client_body_in_file_only"/> needs to be enabled.
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2761 When passing the name of a temporary file in a proxied request,
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2762 or in a request to a FastCGI server,
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2763 passing of the request body should be disabled by the
246
6bfacf7124c6 Minor tweaks.
Ruslan Ermilov <ru@nginx.com>
parents: 244
diff changeset
2764 <link doc="ngx_http_proxy_module.xml" id="proxy_pass_request_body">
6bfacf7124c6 Minor tweaks.
Ruslan Ermilov <ru@nginx.com>
parents: 244
diff changeset
2765 proxy_pass_request_body off</link>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2766 and
246
6bfacf7124c6 Minor tweaks.
Ruslan Ermilov <ru@nginx.com>
parents: 244
diff changeset
2767 <link doc="ngx_http_fastcgi_module.xml" id="fastcgi_pass_request_body">
6bfacf7124c6 Minor tweaks.
Ruslan Ermilov <ru@nginx.com>
parents: 244
diff changeset
2768 fastcgi_pass_request_body off</link>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2769 directives, respectively.
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2770 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2771 </tag-desc>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2772
88
6876e2558d09 Spell checking.
Ruslan Ermilov <ru@nginx.com>
parents: 86
diff changeset
2773 <tag-name><var>$request_completion</var></tag-name>
6876e2558d09 Spell checking.
Ruslan Ermilov <ru@nginx.com>
parents: 86
diff changeset
2774 <tag-desc>
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
2775 “<literal>OK</literal>” if a request has completed,
88
6876e2558d09 Spell checking.
Ruslan Ermilov <ru@nginx.com>
parents: 86
diff changeset
2776 or an empty string otherwise
6876e2558d09 Spell checking.
Ruslan Ermilov <ru@nginx.com>
parents: 86
diff changeset
2777 </tag-desc>
6876e2558d09 Spell checking.
Ruslan Ermilov <ru@nginx.com>
parents: 86
diff changeset
2778
83
e8ed74d3fa0e Sorted variables alphabetically.
Ruslan Ermilov <ru@nginx.com>
parents: 82
diff changeset
2779 <tag-name><var>$request_filename</var></tag-name>
e8ed74d3fa0e Sorted variables alphabetically.
Ruslan Ermilov <ru@nginx.com>
parents: 82
diff changeset
2780 <tag-desc>
530
d8c7160527ae query -> request
Ruslan Ermilov <ru@nginx.com>
parents: 527
diff changeset
2781 file path for the current request, based on the
246
6bfacf7124c6 Minor tweaks.
Ruslan Ermilov <ru@nginx.com>
parents: 244
diff changeset
2782 <link id="root"/> or <link id="alias"/>
83
e8ed74d3fa0e Sorted variables alphabetically.
Ruslan Ermilov <ru@nginx.com>
parents: 82
diff changeset
2783 directives, and the request URI
e8ed74d3fa0e Sorted variables alphabetically.
Ruslan Ermilov <ru@nginx.com>
parents: 82
diff changeset
2784 </tag-desc>
e8ed74d3fa0e Sorted variables alphabetically.
Ruslan Ermilov <ru@nginx.com>
parents: 82
diff changeset
2785
e8ed74d3fa0e Sorted variables alphabetically.
Ruslan Ermilov <ru@nginx.com>
parents: 82
diff changeset
2786 <tag-name><var>$request_method</var></tag-name>
e8ed74d3fa0e Sorted variables alphabetically.
Ruslan Ermilov <ru@nginx.com>
parents: 82
diff changeset
2787 <tag-desc>
e8ed74d3fa0e Sorted variables alphabetically.
Ruslan Ermilov <ru@nginx.com>
parents: 82
diff changeset
2788 request method, usually
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
2789 “<literal>GET</literal>” or “<literal>POST</literal>”
83
e8ed74d3fa0e Sorted variables alphabetically.
Ruslan Ermilov <ru@nginx.com>
parents: 82
diff changeset
2790 </tag-desc>
e8ed74d3fa0e Sorted variables alphabetically.
Ruslan Ermilov <ru@nginx.com>
parents: 82
diff changeset
2791
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2792 <tag-name><var>$request_uri</var></tag-name>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2793 <tag-desc>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2794 full original request URI (with arguments)
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2795 </tag-desc>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2796
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2797 <tag-name><var>$scheme</var></tag-name>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2798 <tag-desc>
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
2799 request scheme, “<literal>http</literal>” or “<literal>https</literal>”
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2800 </tag-desc>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2801
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
2802 <tag-name><var>$sent_http_</var><value>name</value></tag-name>
86
341dc6392e8a Documented $body_bytes_sent, $nginx_version, $request, and $sent_http_*.
Ruslan Ermilov <ru@nginx.com>
parents: 83
diff changeset
2803 <tag-desc>
448
92672f6f0ee1 Elaborated on $http_* and $sent_http_* syntax.
Ruslan Ermilov <ru@nginx.com>
parents: 442
diff changeset
2804 arbitrary response header field;
92672f6f0ee1 Elaborated on $http_* and $sent_http_* syntax.
Ruslan Ermilov <ru@nginx.com>
parents: 442
diff changeset
2805 the last part of a variable name is the field name converted
92672f6f0ee1 Elaborated on $http_* and $sent_http_* syntax.
Ruslan Ermilov <ru@nginx.com>
parents: 442
diff changeset
2806 to lower case with dashes replaced by underscores
86
341dc6392e8a Documented $body_bytes_sent, $nginx_version, $request, and $sent_http_*.
Ruslan Ermilov <ru@nginx.com>
parents: 83
diff changeset
2807 </tag-desc>
341dc6392e8a Documented $body_bytes_sent, $nginx_version, $request, and $sent_http_*.
Ruslan Ermilov <ru@nginx.com>
parents: 83
diff changeset
2808
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2809 <tag-name><var>$server_addr</var></tag-name>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2810 <tag-desc>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2811 an address of the server which accepted a request
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2812 <para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2813 Computing a value of this variable usually requires one system call.
106
56457a474903 If text of the link is not provided, the @id is used.
Ruslan Ermilov <ru@nginx.com>
parents: 102
diff changeset
2814 To avoid a system call, the <link id="listen"/> directives
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
2815 must specify addresses and use the <literal>bind</literal> parameter.
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2816 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2817 </tag-desc>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2818
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2819 <tag-name><var>$server_name</var></tag-name>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2820 <tag-desc>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2821 name of the server which accepted a request
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2822 </tag-desc>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2823
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2824 <tag-name><var>$server_port</var></tag-name>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2825 <tag-desc>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2826 port of the server which accepted a request
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2827 </tag-desc>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2828
83
e8ed74d3fa0e Sorted variables alphabetically.
Ruslan Ermilov <ru@nginx.com>
parents: 82
diff changeset
2829 <tag-name><var>$server_protocol</var></tag-name>
e8ed74d3fa0e Sorted variables alphabetically.
Ruslan Ermilov <ru@nginx.com>
parents: 82
diff changeset
2830 <tag-desc>
e8ed74d3fa0e Sorted variables alphabetically.
Ruslan Ermilov <ru@nginx.com>
parents: 82
diff changeset
2831 request protocol, usually
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
2832 “<literal>HTTP/1.0</literal>”
83
e8ed74d3fa0e Sorted variables alphabetically.
Ruslan Ermilov <ru@nginx.com>
parents: 82
diff changeset
2833 or
271
4c6d2c614d2c Cleaned up XML tag mess:
Ruslan Ermilov <ru@nginx.com>
parents: 270
diff changeset
2834 “<literal>HTTP/1.1</literal>”
83
e8ed74d3fa0e Sorted variables alphabetically.
Ruslan Ermilov <ru@nginx.com>
parents: 82
diff changeset
2835 </tag-desc>
e8ed74d3fa0e Sorted variables alphabetically.
Ruslan Ermilov <ru@nginx.com>
parents: 82
diff changeset
2836
541
a8971cf346be Documented the $status core variable.
Andrey Belov <defan@nginx.com>
parents: 537
diff changeset
2837 <tag-name><var>$status</var></tag-name>
a8971cf346be Documented the $status core variable.
Andrey Belov <defan@nginx.com>
parents: 537
diff changeset
2838 <tag-desc>
a8971cf346be Documented the $status core variable.
Andrey Belov <defan@nginx.com>
parents: 537
diff changeset
2839 response status
a8971cf346be Documented the $status core variable.
Andrey Belov <defan@nginx.com>
parents: 537
diff changeset
2840 </tag-desc>
a8971cf346be Documented the $status core variable.
Andrey Belov <defan@nginx.com>
parents: 537
diff changeset
2841
453
98ee97a382d3 Documented the $tcpinfo_* variables.
Ruslan Ermilov <ru@nginx.com>
parents: 448
diff changeset
2842 <tag-name>
98ee97a382d3 Documented the $tcpinfo_* variables.
Ruslan Ermilov <ru@nginx.com>
parents: 448
diff changeset
2843 <var>$tcpinfo_rtt</var>,
98ee97a382d3 Documented the $tcpinfo_* variables.
Ruslan Ermilov <ru@nginx.com>
parents: 448
diff changeset
2844 <var>$tcpinfo_rttvar</var>,
98ee97a382d3 Documented the $tcpinfo_* variables.
Ruslan Ermilov <ru@nginx.com>
parents: 448
diff changeset
2845 <var>$tcpinfo_snd_cwnd</var>,
98ee97a382d3 Documented the $tcpinfo_* variables.
Ruslan Ermilov <ru@nginx.com>
parents: 448
diff changeset
2846 <var>$tcpinfo_rcv_space</var>
98ee97a382d3 Documented the $tcpinfo_* variables.
Ruslan Ermilov <ru@nginx.com>
parents: 448
diff changeset
2847 </tag-name>
98ee97a382d3 Documented the $tcpinfo_* variables.
Ruslan Ermilov <ru@nginx.com>
parents: 448
diff changeset
2848 <tag-desc>
98ee97a382d3 Documented the $tcpinfo_* variables.
Ruslan Ermilov <ru@nginx.com>
parents: 448
diff changeset
2849 information about the client TCP connection; available on systems
98ee97a382d3 Documented the $tcpinfo_* variables.
Ruslan Ermilov <ru@nginx.com>
parents: 448
diff changeset
2850 that support the <c-def>TCP_INFO</c-def> socket option
98ee97a382d3 Documented the $tcpinfo_* variables.
Ruslan Ermilov <ru@nginx.com>
parents: 448
diff changeset
2851 </tag-desc>
98ee97a382d3 Documented the $tcpinfo_* variables.
Ruslan Ermilov <ru@nginx.com>
parents: 448
diff changeset
2852
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2853 <tag-name><var>$uri</var></tag-name>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2854 <tag-desc>
503
aed015c3dedd Documented URI normalization rules, including %-decoding.
Ruslan Ermilov <ru@nginx.com>
parents: 499
diff changeset
2855 current URI in request, <link id="location">normalized</link>
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2856 <para>
503
aed015c3dedd Documented URI normalization rules, including %-decoding.
Ruslan Ermilov <ru@nginx.com>
parents: 499
diff changeset
2857 The value of <var>$uri</var> may change during request processing,
aed015c3dedd Documented URI normalization rules, including %-decoding.
Ruslan Ermilov <ru@nginx.com>
parents: 499
diff changeset
2858 e.g. when doing internal redirects, or when using index files.
57
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2859 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2860 </tag-desc>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2861
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2862 </list>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2863 </para>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2864
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2865 </section>
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2866
12f1de4539b4 Initial English translation of ngx_http_core_module.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2867 </module>