annotate xml/en/docs/http/ngx_http_fastcgi_module.xml @ 1128:1594ed379f1f

De-i18n'ed <commercial_version/>. Now the text of a link has to be written verbatim.
author Ruslan Ermilov <ru@nginx.com>
date Fri, 21 Mar 2014 13:15:42 +0400
parents 379cb572a7ec
children d37892ad69ab
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
298
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1 <?xml version="1.0"?>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2
580
be54c443235a Added copyright markers to documentation sources.
Ruslan Ermilov <ru@nginx.com>
parents: 575
diff changeset
3 <!--
be54c443235a Added copyright markers to documentation sources.
Ruslan Ermilov <ru@nginx.com>
parents: 575
diff changeset
4 Copyright (C) Igor Sysoev
be54c443235a Added copyright markers to documentation sources.
Ruslan Ermilov <ru@nginx.com>
parents: 575
diff changeset
5 Copyright (C) Nginx, Inc.
be54c443235a Added copyright markers to documentation sources.
Ruslan Ermilov <ru@nginx.com>
parents: 575
diff changeset
6 -->
be54c443235a Added copyright markers to documentation sources.
Ruslan Ermilov <ru@nginx.com>
parents: 575
diff changeset
7
298
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
8 <!DOCTYPE module SYSTEM "../../../../dtd/module.dtd">
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
9
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
10 <module name="Module ngx_http_fastcgi_module"
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
11 link="/en/docs/http/ngx_http_fastcgi_module.html"
589
764fbac1b8b4 Added document revision.
Ruslan Ermilov <ru@nginx.com>
parents: 580
diff changeset
12 lang="en"
1028
e582a10b1917 Documented the "proxy_cache_purge" and "fastcgi_cache_purge" directives.
Vladimir Homutov <vl@nginx.com>
parents: 1015
diff changeset
13 rev="13">
298
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
14
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
15 <section id="summary">
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
16
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
17 <para>
966
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
18 The <literal>ngx_http_fastcgi_module</literal> module allows passing
298
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
19 requests to a FastCGI server.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
20 </para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
21
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
22 </section>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
23
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
24
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
25 <section id="example" name="Example Configuration">
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
26
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
27 <para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
28 <example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
29 location / {
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
30 fastcgi_pass localhost:9000;
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
31 fastcgi_index index.php;
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
32
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
33 fastcgi_param SCRIPT_FILENAME /home/www/scripts/php$fastcgi_script_name;
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
34 fastcgi_param QUERY_STRING $query_string;
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
35 fastcgi_param REQUEST_METHOD $request_method;
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
36 fastcgi_param CONTENT_TYPE $content_type;
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
37 fastcgi_param CONTENT_LENGTH $content_length;
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
38 }
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
39 </example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
40 </para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
41
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
42 </section>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
43
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
44
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
45 <section id="directives" name="Directives">
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
46
772
ce121bf644f5 Documented "bind" directive in memcached, fastcgi and proxy modules.
Vladimir Homutov <vl@nginx.com>
parents: 589
diff changeset
47 <directive name="fastcgi_bind">
815
ed29fd8be462 *_bind: variables support and inheritance.
Ruslan Ermilov <ru@nginx.com>
parents: 793
diff changeset
48 <syntax><value>address</value> | <literal>off</literal></syntax>
772
ce121bf644f5 Documented "bind" directive in memcached, fastcgi and proxy modules.
Vladimir Homutov <vl@nginx.com>
parents: 589
diff changeset
49 <default/>
ce121bf644f5 Documented "bind" directive in memcached, fastcgi and proxy modules.
Vladimir Homutov <vl@nginx.com>
parents: 589
diff changeset
50 <context>http</context>
ce121bf644f5 Documented "bind" directive in memcached, fastcgi and proxy modules.
Vladimir Homutov <vl@nginx.com>
parents: 589
diff changeset
51 <context>server</context>
ce121bf644f5 Documented "bind" directive in memcached, fastcgi and proxy modules.
Vladimir Homutov <vl@nginx.com>
parents: 589
diff changeset
52 <context>location</context>
ce121bf644f5 Documented "bind" directive in memcached, fastcgi and proxy modules.
Vladimir Homutov <vl@nginx.com>
parents: 589
diff changeset
53 <appeared-in>0.8.22</appeared-in>
ce121bf644f5 Documented "bind" directive in memcached, fastcgi and proxy modules.
Vladimir Homutov <vl@nginx.com>
parents: 589
diff changeset
54
ce121bf644f5 Documented "bind" directive in memcached, fastcgi and proxy modules.
Vladimir Homutov <vl@nginx.com>
parents: 589
diff changeset
55 <para>
966
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
56 Makes outgoing connections to a FastCGI server originate
772
ce121bf644f5 Documented "bind" directive in memcached, fastcgi and proxy modules.
Vladimir Homutov <vl@nginx.com>
parents: 589
diff changeset
57 from the specified local IP <value>address</value>.
966
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
58 Parameter value can contain variables (1.3.12).
815
ed29fd8be462 *_bind: variables support and inheritance.
Ruslan Ermilov <ru@nginx.com>
parents: 793
diff changeset
59 The special value <literal>off</literal> (1.3.12) cancels the effect
ed29fd8be462 *_bind: variables support and inheritance.
Ruslan Ermilov <ru@nginx.com>
parents: 793
diff changeset
60 of the <literal>fastcgi_bind</literal> directive
966
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
61 inherited from the previous configuration level, which allows the
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
62 system to auto-assign the local IP address.
772
ce121bf644f5 Documented "bind" directive in memcached, fastcgi and proxy modules.
Vladimir Homutov <vl@nginx.com>
parents: 589
diff changeset
63 </para>
ce121bf644f5 Documented "bind" directive in memcached, fastcgi and proxy modules.
Vladimir Homutov <vl@nginx.com>
parents: 589
diff changeset
64
ce121bf644f5 Documented "bind" directive in memcached, fastcgi and proxy modules.
Vladimir Homutov <vl@nginx.com>
parents: 589
diff changeset
65 </directive>
ce121bf644f5 Documented "bind" directive in memcached, fastcgi and proxy modules.
Vladimir Homutov <vl@nginx.com>
parents: 589
diff changeset
66
ce121bf644f5 Documented "bind" directive in memcached, fastcgi and proxy modules.
Vladimir Homutov <vl@nginx.com>
parents: 589
diff changeset
67
298
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
68 <directive name="fastcgi_buffer_size">
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
69 <syntax><value>size</value></syntax>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
70 <default>4k|8k</default>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
71 <context>http</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
72 <context>server</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
73 <context>location</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
74
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
75 <para>
966
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
76 Sets the <value>size</value> of the buffer used for reading the first part
298
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
77 of a response received from the FastCGI server.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
78 This part usually contains a small response header.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
79 By default, the buffer size is equal to the size of one
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
80 buffer set by the <link id="fastcgi_buffers"/> directive.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
81 It can be made smaller however.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
82 </para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
83
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
84 </directive>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
85
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
86
995
c5ccf511346a Documented the "fastcgi_buffering" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 966
diff changeset
87 <directive name="fastcgi_buffering">
c5ccf511346a Documented the "fastcgi_buffering" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 966
diff changeset
88 <syntax><literal>on</literal> | <literal>off</literal></syntax>
c5ccf511346a Documented the "fastcgi_buffering" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 966
diff changeset
89 <default>on</default>
c5ccf511346a Documented the "fastcgi_buffering" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 966
diff changeset
90 <context>http</context>
c5ccf511346a Documented the "fastcgi_buffering" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 966
diff changeset
91 <context>server</context>
c5ccf511346a Documented the "fastcgi_buffering" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 966
diff changeset
92 <context>location</context>
c5ccf511346a Documented the "fastcgi_buffering" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 966
diff changeset
93 <appeared-in>1.5.6</appeared-in>
c5ccf511346a Documented the "fastcgi_buffering" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 966
diff changeset
94
c5ccf511346a Documented the "fastcgi_buffering" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 966
diff changeset
95 <para>
c5ccf511346a Documented the "fastcgi_buffering" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 966
diff changeset
96 Enables or disables buffering of responses from the FastCGI server.
c5ccf511346a Documented the "fastcgi_buffering" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 966
diff changeset
97 </para>
c5ccf511346a Documented the "fastcgi_buffering" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 966
diff changeset
98
c5ccf511346a Documented the "fastcgi_buffering" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 966
diff changeset
99 <para>
c5ccf511346a Documented the "fastcgi_buffering" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 966
diff changeset
100 When buffering is enabled, nginx receives a response from the FastCGI server
c5ccf511346a Documented the "fastcgi_buffering" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 966
diff changeset
101 as soon as possible, saving it into the buffers set by the
c5ccf511346a Documented the "fastcgi_buffering" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 966
diff changeset
102 <link id="fastcgi_buffer_size"/> and <link id="fastcgi_buffers"/> directives.
c5ccf511346a Documented the "fastcgi_buffering" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 966
diff changeset
103 If the whole response does not fit into memory, a part of it can be saved
c5ccf511346a Documented the "fastcgi_buffering" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 966
diff changeset
104 to a <link id="fastcgi_temp_path">temporary file</link> on the disk.
c5ccf511346a Documented the "fastcgi_buffering" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 966
diff changeset
105 Writing to temporary files is controlled by the
c5ccf511346a Documented the "fastcgi_buffering" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 966
diff changeset
106 <link id="fastcgi_max_temp_file_size"/> and
c5ccf511346a Documented the "fastcgi_buffering" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 966
diff changeset
107 <link id="fastcgi_temp_file_write_size"/> directives.
c5ccf511346a Documented the "fastcgi_buffering" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 966
diff changeset
108 </para>
c5ccf511346a Documented the "fastcgi_buffering" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 966
diff changeset
109
c5ccf511346a Documented the "fastcgi_buffering" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 966
diff changeset
110 <para>
c5ccf511346a Documented the "fastcgi_buffering" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 966
diff changeset
111 When buffering is disabled, a response is passed to a client synchronously,
c5ccf511346a Documented the "fastcgi_buffering" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 966
diff changeset
112 immediately as it is received.
c5ccf511346a Documented the "fastcgi_buffering" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 966
diff changeset
113 nginx will not try to read the whole response from the FastCGI server.
c5ccf511346a Documented the "fastcgi_buffering" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 966
diff changeset
114 The maximum size of the data that nginx can receive from the server
c5ccf511346a Documented the "fastcgi_buffering" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 966
diff changeset
115 at a time is set by the <link id="fastcgi_buffer_size"/> directive.
c5ccf511346a Documented the "fastcgi_buffering" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 966
diff changeset
116 </para>
c5ccf511346a Documented the "fastcgi_buffering" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 966
diff changeset
117
c5ccf511346a Documented the "fastcgi_buffering" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 966
diff changeset
118 <para>
c5ccf511346a Documented the "fastcgi_buffering" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 966
diff changeset
119 Buffering can also be enabled or disabled by passing
c5ccf511346a Documented the "fastcgi_buffering" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 966
diff changeset
120 “<literal>yes</literal>” or “<literal>no</literal>” in the
c5ccf511346a Documented the "fastcgi_buffering" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 966
diff changeset
121 <header>X-Accel-Buffering</header> response header field.
c5ccf511346a Documented the "fastcgi_buffering" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 966
diff changeset
122 This capability can be disabled using the
c5ccf511346a Documented the "fastcgi_buffering" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 966
diff changeset
123 <link id="fastcgi_ignore_headers"/> directive.
c5ccf511346a Documented the "fastcgi_buffering" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 966
diff changeset
124 </para>
c5ccf511346a Documented the "fastcgi_buffering" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 966
diff changeset
125
c5ccf511346a Documented the "fastcgi_buffering" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 966
diff changeset
126 </directive>
c5ccf511346a Documented the "fastcgi_buffering" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 966
diff changeset
127
c5ccf511346a Documented the "fastcgi_buffering" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 966
diff changeset
128
298
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
129 <directive name="fastcgi_buffers">
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
130 <syntax><value>number</value> <value>size</value></syntax>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
131 <default>8 4k|8k</default>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
132 <context>http</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
133 <context>server</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
134 <context>location</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
135
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
136 <para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
137 Sets the <value>number</value> and <value>size</value> of
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
138 buffers used for reading a response from the FastCGI server,
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
139 for a single connection.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
140 By default, the buffer size is equal to one memory page.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
141 This is either 4K or 8K, depending on a platform.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
142 </para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
143
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
144 </directive>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
145
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
146
411
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
147 <directive name="fastcgi_busy_buffers_size">
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
148 <syntax><value>size</value></syntax>
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
149 <default>8k|16k</default>
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
150 <context>http</context>
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
151 <context>server</context>
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
152 <context>location</context>
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
153
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
154 <para>
995
c5ccf511346a Documented the "fastcgi_buffering" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 966
diff changeset
155 When <link id="fastcgi_buffering">buffering</link> of responses from the FastCGI
c5ccf511346a Documented the "fastcgi_buffering" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 966
diff changeset
156 server is enabled, limits the total <value>size</value> of buffers that
411
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
157 can be busy sending a response to the client while the response is not
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
158 yet fully read.
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
159 In the mean time, the rest of the buffers can be used for reading a response
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
160 and, if needed, buffering part of a response to a temporary file.
966
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
161 By default, <value>size</value> is limited by the size of two buffers set by the
411
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
162 <link id="fastcgi_buffer_size"/> and <link id="fastcgi_buffers"/> directives.
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
163 </para>
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
164
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
165 </directive>
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
166
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
167
298
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
168 <directive name="fastcgi_cache">
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
169 <syntax><value>zone</value> | <literal>off</literal></syntax>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
170 <default>off</default>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
171 <context>http</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
172 <context>server</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
173 <context>location</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
174
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
175 <para>
575
ebcb351d9eb3 Consistently using the term "shared memory zone".
Ruslan Ermilov <ru@nginx.com>
parents: 509
diff changeset
176 Defines a shared memory zone used for caching.
298
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
177 The same zone can be used in several places.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
178 The <literal>off</literal> parameter disables caching inherited
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
179 from the previous configuration level.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
180 </para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
181
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
182 </directive>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
183
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
184
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
185 <directive name="fastcgi_cache_bypass">
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
186 <syntax><value>string</value> ...</syntax>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
187 <default/>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
188 <context>http</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
189 <context>server</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
190 <context>location</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
191
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
192 <para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
193 Defines conditions under which the response will not be taken from a cache.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
194 If at least one value of the string parameters is not empty and is not
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
195 equal to “0” then the response will not be taken from the cache:
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
196 <example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
197 fastcgi_cache_bypass $cookie_nocache $arg_nocache$arg_comment;
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
198 fastcgi_cache_bypass $http_pragma $http_authorization;
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
199 </example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
200 Can be used along with the <link id="fastcgi_no_cache"/> directive.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
201 </para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
202
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
203 </directive>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
204
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
205
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
206 <directive name="fastcgi_cache_key">
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
207 <syntax><value>string</value></syntax>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
208 <default/>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
209 <context>http</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
210 <context>server</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
211 <context>location</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
212
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
213 <para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
214 Defines a key for caching, for example
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
215 <example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
216 fastcgi_cache_key localhost:9000$request_uri;
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
217 </example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
218 </para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
219
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
220 </directive>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
221
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
222
302
df728215db07 Documented "proxy_cache_lock", "proxy_cache_lock_timeout",
Ruslan Ermilov <ru@nginx.com>
parents: 298
diff changeset
223 <directive name="fastcgi_cache_lock">
df728215db07 Documented "proxy_cache_lock", "proxy_cache_lock_timeout",
Ruslan Ermilov <ru@nginx.com>
parents: 298
diff changeset
224 <syntax><literal>on</literal> | <literal>off</literal></syntax>
df728215db07 Documented "proxy_cache_lock", "proxy_cache_lock_timeout",
Ruslan Ermilov <ru@nginx.com>
parents: 298
diff changeset
225 <default>off</default>
df728215db07 Documented "proxy_cache_lock", "proxy_cache_lock_timeout",
Ruslan Ermilov <ru@nginx.com>
parents: 298
diff changeset
226 <context>http</context>
df728215db07 Documented "proxy_cache_lock", "proxy_cache_lock_timeout",
Ruslan Ermilov <ru@nginx.com>
parents: 298
diff changeset
227 <context>server</context>
df728215db07 Documented "proxy_cache_lock", "proxy_cache_lock_timeout",
Ruslan Ermilov <ru@nginx.com>
parents: 298
diff changeset
228 <context>location</context>
310
86732337c730 Added a historical information for proxy_cache_lock, proxy_cache_lock_timeout,
Ruslan Ermilov <ru@nginx.com>
parents: 302
diff changeset
229 <appeared-in>1.1.12</appeared-in>
302
df728215db07 Documented "proxy_cache_lock", "proxy_cache_lock_timeout",
Ruslan Ermilov <ru@nginx.com>
parents: 298
diff changeset
230
df728215db07 Documented "proxy_cache_lock", "proxy_cache_lock_timeout",
Ruslan Ermilov <ru@nginx.com>
parents: 298
diff changeset
231 <para>
df728215db07 Documented "proxy_cache_lock", "proxy_cache_lock_timeout",
Ruslan Ermilov <ru@nginx.com>
parents: 298
diff changeset
232 When enabled, only one request at a time will be allowed to populate
df728215db07 Documented "proxy_cache_lock", "proxy_cache_lock_timeout",
Ruslan Ermilov <ru@nginx.com>
parents: 298
diff changeset
233 a new cache element identified according to the <link id="fastcgi_cache_key"/>
df728215db07 Documented "proxy_cache_lock", "proxy_cache_lock_timeout",
Ruslan Ermilov <ru@nginx.com>
parents: 298
diff changeset
234 directive by passing a request to a FastCGI server.
df728215db07 Documented "proxy_cache_lock", "proxy_cache_lock_timeout",
Ruslan Ermilov <ru@nginx.com>
parents: 298
diff changeset
235 Other requests of the same cache element will either wait
966
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
236 for a response to appear in the cache or the cache lock for
302
df728215db07 Documented "proxy_cache_lock", "proxy_cache_lock_timeout",
Ruslan Ermilov <ru@nginx.com>
parents: 298
diff changeset
237 this element to be released, up to the time set by the
df728215db07 Documented "proxy_cache_lock", "proxy_cache_lock_timeout",
Ruslan Ermilov <ru@nginx.com>
parents: 298
diff changeset
238 <link id="fastcgi_cache_lock_timeout"/> directive.
df728215db07 Documented "proxy_cache_lock", "proxy_cache_lock_timeout",
Ruslan Ermilov <ru@nginx.com>
parents: 298
diff changeset
239 </para>
df728215db07 Documented "proxy_cache_lock", "proxy_cache_lock_timeout",
Ruslan Ermilov <ru@nginx.com>
parents: 298
diff changeset
240
df728215db07 Documented "proxy_cache_lock", "proxy_cache_lock_timeout",
Ruslan Ermilov <ru@nginx.com>
parents: 298
diff changeset
241 </directive>
df728215db07 Documented "proxy_cache_lock", "proxy_cache_lock_timeout",
Ruslan Ermilov <ru@nginx.com>
parents: 298
diff changeset
242
df728215db07 Documented "proxy_cache_lock", "proxy_cache_lock_timeout",
Ruslan Ermilov <ru@nginx.com>
parents: 298
diff changeset
243
df728215db07 Documented "proxy_cache_lock", "proxy_cache_lock_timeout",
Ruslan Ermilov <ru@nginx.com>
parents: 298
diff changeset
244 <directive name="fastcgi_cache_lock_timeout">
df728215db07 Documented "proxy_cache_lock", "proxy_cache_lock_timeout",
Ruslan Ermilov <ru@nginx.com>
parents: 298
diff changeset
245 <syntax><value>time</value></syntax>
df728215db07 Documented "proxy_cache_lock", "proxy_cache_lock_timeout",
Ruslan Ermilov <ru@nginx.com>
parents: 298
diff changeset
246 <default>5s</default>
df728215db07 Documented "proxy_cache_lock", "proxy_cache_lock_timeout",
Ruslan Ermilov <ru@nginx.com>
parents: 298
diff changeset
247 <context>http</context>
df728215db07 Documented "proxy_cache_lock", "proxy_cache_lock_timeout",
Ruslan Ermilov <ru@nginx.com>
parents: 298
diff changeset
248 <context>server</context>
df728215db07 Documented "proxy_cache_lock", "proxy_cache_lock_timeout",
Ruslan Ermilov <ru@nginx.com>
parents: 298
diff changeset
249 <context>location</context>
310
86732337c730 Added a historical information for proxy_cache_lock, proxy_cache_lock_timeout,
Ruslan Ermilov <ru@nginx.com>
parents: 302
diff changeset
250 <appeared-in>1.1.12</appeared-in>
302
df728215db07 Documented "proxy_cache_lock", "proxy_cache_lock_timeout",
Ruslan Ermilov <ru@nginx.com>
parents: 298
diff changeset
251
df728215db07 Documented "proxy_cache_lock", "proxy_cache_lock_timeout",
Ruslan Ermilov <ru@nginx.com>
parents: 298
diff changeset
252 <para>
df728215db07 Documented "proxy_cache_lock", "proxy_cache_lock_timeout",
Ruslan Ermilov <ru@nginx.com>
parents: 298
diff changeset
253 Sets a timeout for <link id="fastcgi_cache_lock"/>.
df728215db07 Documented "proxy_cache_lock", "proxy_cache_lock_timeout",
Ruslan Ermilov <ru@nginx.com>
parents: 298
diff changeset
254 </para>
df728215db07 Documented "proxy_cache_lock", "proxy_cache_lock_timeout",
Ruslan Ermilov <ru@nginx.com>
parents: 298
diff changeset
255
df728215db07 Documented "proxy_cache_lock", "proxy_cache_lock_timeout",
Ruslan Ermilov <ru@nginx.com>
parents: 298
diff changeset
256 </directive>
df728215db07 Documented "proxy_cache_lock", "proxy_cache_lock_timeout",
Ruslan Ermilov <ru@nginx.com>
parents: 298
diff changeset
257
df728215db07 Documented "proxy_cache_lock", "proxy_cache_lock_timeout",
Ruslan Ermilov <ru@nginx.com>
parents: 298
diff changeset
258
793
9104a921d940 Documented "fastcgi_pass_request_body/headers" directives.
Vladimir Homutov <vl@nginx.com>
parents: 773
diff changeset
259 <directive name="fastcgi_cache_methods">
9104a921d940 Documented "fastcgi_pass_request_body/headers" directives.
Vladimir Homutov <vl@nginx.com>
parents: 773
diff changeset
260 <syntax>
9104a921d940 Documented "fastcgi_pass_request_body/headers" directives.
Vladimir Homutov <vl@nginx.com>
parents: 773
diff changeset
261 <literal>GET</literal> |
9104a921d940 Documented "fastcgi_pass_request_body/headers" directives.
Vladimir Homutov <vl@nginx.com>
parents: 773
diff changeset
262 <literal>HEAD</literal> |
9104a921d940 Documented "fastcgi_pass_request_body/headers" directives.
Vladimir Homutov <vl@nginx.com>
parents: 773
diff changeset
263 <literal>POST</literal>
9104a921d940 Documented "fastcgi_pass_request_body/headers" directives.
Vladimir Homutov <vl@nginx.com>
parents: 773
diff changeset
264 ...</syntax>
9104a921d940 Documented "fastcgi_pass_request_body/headers" directives.
Vladimir Homutov <vl@nginx.com>
parents: 773
diff changeset
265 <default>GET HEAD</default>
9104a921d940 Documented "fastcgi_pass_request_body/headers" directives.
Vladimir Homutov <vl@nginx.com>
parents: 773
diff changeset
266 <context>http</context>
9104a921d940 Documented "fastcgi_pass_request_body/headers" directives.
Vladimir Homutov <vl@nginx.com>
parents: 773
diff changeset
267 <context>server</context>
9104a921d940 Documented "fastcgi_pass_request_body/headers" directives.
Vladimir Homutov <vl@nginx.com>
parents: 773
diff changeset
268 <context>location</context>
9104a921d940 Documented "fastcgi_pass_request_body/headers" directives.
Vladimir Homutov <vl@nginx.com>
parents: 773
diff changeset
269 <appeared-in>0.7.59</appeared-in>
9104a921d940 Documented "fastcgi_pass_request_body/headers" directives.
Vladimir Homutov <vl@nginx.com>
parents: 773
diff changeset
270
9104a921d940 Documented "fastcgi_pass_request_body/headers" directives.
Vladimir Homutov <vl@nginx.com>
parents: 773
diff changeset
271 <para>
9104a921d940 Documented "fastcgi_pass_request_body/headers" directives.
Vladimir Homutov <vl@nginx.com>
parents: 773
diff changeset
272 If the client request method is listed in this directive then
9104a921d940 Documented "fastcgi_pass_request_body/headers" directives.
Vladimir Homutov <vl@nginx.com>
parents: 773
diff changeset
273 the response will be cached.
9104a921d940 Documented "fastcgi_pass_request_body/headers" directives.
Vladimir Homutov <vl@nginx.com>
parents: 773
diff changeset
274 “<literal>GET</literal>” and “<literal>HEAD</literal>” methods are always
9104a921d940 Documented "fastcgi_pass_request_body/headers" directives.
Vladimir Homutov <vl@nginx.com>
parents: 773
diff changeset
275 added to the list, though it is recommended to specify them explicitly.
9104a921d940 Documented "fastcgi_pass_request_body/headers" directives.
Vladimir Homutov <vl@nginx.com>
parents: 773
diff changeset
276 See also the <link id="fastcgi_no_cache"/> directive.
9104a921d940 Documented "fastcgi_pass_request_body/headers" directives.
Vladimir Homutov <vl@nginx.com>
parents: 773
diff changeset
277 </para>
9104a921d940 Documented "fastcgi_pass_request_body/headers" directives.
Vladimir Homutov <vl@nginx.com>
parents: 773
diff changeset
278
9104a921d940 Documented "fastcgi_pass_request_body/headers" directives.
Vladimir Homutov <vl@nginx.com>
parents: 773
diff changeset
279 </directive>
9104a921d940 Documented "fastcgi_pass_request_body/headers" directives.
Vladimir Homutov <vl@nginx.com>
parents: 773
diff changeset
280
9104a921d940 Documented "fastcgi_pass_request_body/headers" directives.
Vladimir Homutov <vl@nginx.com>
parents: 773
diff changeset
281
298
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
282 <directive name="fastcgi_cache_min_uses">
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
283 <syntax><value>number</value></syntax>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
284 <default>1</default>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
285 <context>http</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
286 <context>server</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
287 <context>location</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
288
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
289 <para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
290 Sets the <value>number</value> of requests after which the response
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
291 will be cached.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
292 </para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
293
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
294 </directive>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
295
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
296
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
297 <directive name="fastcgi_cache_path">
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
298 <syntax>
364
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 351
diff changeset
299 <value>path</value>
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 351
diff changeset
300 [<literal>levels</literal>=<value>levels</value>]
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 351
diff changeset
301 <literal>keys_zone</literal>=<value>name</value>:<value>size</value>
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 351
diff changeset
302 [<literal>inactive</literal>=<value>time</value>]
508
5e332fafd228 Documented "cache loader" and its parameters.
Ruslan Ermilov <ru@nginx.com>
parents: 506
diff changeset
303 [<literal>max_size</literal>=<value>size</value>]
5e332fafd228 Documented "cache loader" and its parameters.
Ruslan Ermilov <ru@nginx.com>
parents: 506
diff changeset
304 [<literal>loader_files</literal>=<value>number</value>]
5e332fafd228 Documented "cache loader" and its parameters.
Ruslan Ermilov <ru@nginx.com>
parents: 506
diff changeset
305 [<literal>loader_sleep</literal>=<value>time</value>]
5e332fafd228 Documented "cache loader" and its parameters.
Ruslan Ermilov <ru@nginx.com>
parents: 506
diff changeset
306 [<literal>loader_threshold</literal>=<value>time</value>]</syntax>
298
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
307 <default/>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
308 <context>http</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
309
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
310 <para>
966
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
311 Sets the path and other parameters of a cache.
298
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
312 Cache data are stored in files.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
313 Both the key and file name in a cache are a result of
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
314 applying the MD5 function to the proxied URL.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
315
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
316 The <literal>levels</literal> parameter defines hierarchy levels of a cache.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
317 For example, in the following configuration
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
318 <example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
319 fastcgi_cache_path /data/nginx/cache levels=1:2 keys_zone=one:10m;
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
320 </example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
321 file names in a cache will look like this:
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
322 <example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
323 /data/nginx/cache/<emphasis>c</emphasis>/<emphasis>29</emphasis>/b7f54b2df7773722d382f4809d650<emphasis>29c</emphasis>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
324 </example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
325 </para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
326
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
327 <para>
966
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
328 A cached response is first written to a temporary file,
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
329 and then the file is renamed.
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
330 Starting from version 0.8.9, temporary files and the cache can be put on
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
331 different file systems.
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
332 However, be aware that in this case a file is copied
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
333 across two file systems instead of the cheap renaming operation.
298
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
334 It is thus recommended that for any given location both cache and a directory
966
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
335 holding temporary files, set by the <link id="fastcgi_temp_path"/> directive,
298
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
336 are put on the same file system.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
337 </para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
338
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
339 <para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
340 In addition, all active keys and information about data are stored
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
341 in a shared memory zone, whose <value>name</value> and <value>size</value>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
342 are configured by the <literal>keys_zone</literal> parameter.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
343 Cached data that are not accessed during the time specified by the
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
344 <literal>inactive</literal> parameter get removed from the cache
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
345 regardless of their freshness.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
346 By default, <literal>inactive</literal> is set to 10 minutes.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
347 </para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
348
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
349 <para>
966
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
350 The special “cache manager” process monitors the maximum cache size set
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
351 by the <literal>max_size</literal> parameter.
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
352 When this size is exceeded, it removes the least recently used data.
298
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
353 </para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
354
508
5e332fafd228 Documented "cache loader" and its parameters.
Ruslan Ermilov <ru@nginx.com>
parents: 506
diff changeset
355 <para>
966
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
356 A minute after the start the special “cache loader” process is activated.
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
357 It loads information about previously cached data stored on file system
508
5e332fafd228 Documented "cache loader" and its parameters.
Ruslan Ermilov <ru@nginx.com>
parents: 506
diff changeset
358 into a cache zone.
966
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
359 The loading is done in iterations.
508
5e332fafd228 Documented "cache loader" and its parameters.
Ruslan Ermilov <ru@nginx.com>
parents: 506
diff changeset
360 During one iteration no more than <literal>loader_files</literal> items
5e332fafd228 Documented "cache loader" and its parameters.
Ruslan Ermilov <ru@nginx.com>
parents: 506
diff changeset
361 are loaded (by default, 100).
5e332fafd228 Documented "cache loader" and its parameters.
Ruslan Ermilov <ru@nginx.com>
parents: 506
diff changeset
362 Besides, the duration of one iteration is limited by the
5e332fafd228 Documented "cache loader" and its parameters.
Ruslan Ermilov <ru@nginx.com>
parents: 506
diff changeset
363 <literal>loader_threshold</literal> parameter (by default, 200 milliseconds).
966
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
364 Between iterations, a pause configured by the <literal>loader_sleep</literal>
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
365 parameter (by default, 50 milliseconds) is made.
508
5e332fafd228 Documented "cache loader" and its parameters.
Ruslan Ermilov <ru@nginx.com>
parents: 506
diff changeset
366 </para>
5e332fafd228 Documented "cache loader" and its parameters.
Ruslan Ermilov <ru@nginx.com>
parents: 506
diff changeset
367
298
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
368 </directive>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
369
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
370
1028
e582a10b1917 Documented the "proxy_cache_purge" and "fastcgi_cache_purge" directives.
Vladimir Homutov <vl@nginx.com>
parents: 1015
diff changeset
371 <directive name="fastcgi_cache_purge">
e582a10b1917 Documented the "proxy_cache_purge" and "fastcgi_cache_purge" directives.
Vladimir Homutov <vl@nginx.com>
parents: 1015
diff changeset
372 <syntax>string ...</syntax>
e582a10b1917 Documented the "proxy_cache_purge" and "fastcgi_cache_purge" directives.
Vladimir Homutov <vl@nginx.com>
parents: 1015
diff changeset
373 <default/>
e582a10b1917 Documented the "proxy_cache_purge" and "fastcgi_cache_purge" directives.
Vladimir Homutov <vl@nginx.com>
parents: 1015
diff changeset
374 <context>http</context>
e582a10b1917 Documented the "proxy_cache_purge" and "fastcgi_cache_purge" directives.
Vladimir Homutov <vl@nginx.com>
parents: 1015
diff changeset
375 <context>server</context>
e582a10b1917 Documented the "proxy_cache_purge" and "fastcgi_cache_purge" directives.
Vladimir Homutov <vl@nginx.com>
parents: 1015
diff changeset
376 <context>location</context>
e582a10b1917 Documented the "proxy_cache_purge" and "fastcgi_cache_purge" directives.
Vladimir Homutov <vl@nginx.com>
parents: 1015
diff changeset
377 <appeared-in>1.5.7</appeared-in>
e582a10b1917 Documented the "proxy_cache_purge" and "fastcgi_cache_purge" directives.
Vladimir Homutov <vl@nginx.com>
parents: 1015
diff changeset
378
e582a10b1917 Documented the "proxy_cache_purge" and "fastcgi_cache_purge" directives.
Vladimir Homutov <vl@nginx.com>
parents: 1015
diff changeset
379 <para>
e582a10b1917 Documented the "proxy_cache_purge" and "fastcgi_cache_purge" directives.
Vladimir Homutov <vl@nginx.com>
parents: 1015
diff changeset
380 Defines conditions under which the request will be considered a cache
e582a10b1917 Documented the "proxy_cache_purge" and "fastcgi_cache_purge" directives.
Vladimir Homutov <vl@nginx.com>
parents: 1015
diff changeset
381 purge request.
e582a10b1917 Documented the "proxy_cache_purge" and "fastcgi_cache_purge" directives.
Vladimir Homutov <vl@nginx.com>
parents: 1015
diff changeset
382 If at least one value of the string parameters is not empty and is not equal
e582a10b1917 Documented the "proxy_cache_purge" and "fastcgi_cache_purge" directives.
Vladimir Homutov <vl@nginx.com>
parents: 1015
diff changeset
383 to “0” then the cache entry with a corresponding
e582a10b1917 Documented the "proxy_cache_purge" and "fastcgi_cache_purge" directives.
Vladimir Homutov <vl@nginx.com>
parents: 1015
diff changeset
384 <link id="fastcgi_cache_key">cache key</link> is removed.
e582a10b1917 Documented the "proxy_cache_purge" and "fastcgi_cache_purge" directives.
Vladimir Homutov <vl@nginx.com>
parents: 1015
diff changeset
385 The result of successful operation is indicated by returning
e582a10b1917 Documented the "proxy_cache_purge" and "fastcgi_cache_purge" directives.
Vladimir Homutov <vl@nginx.com>
parents: 1015
diff changeset
386 the <http-status code="204" text="No Content"/> response.
e582a10b1917 Documented the "proxy_cache_purge" and "fastcgi_cache_purge" directives.
Vladimir Homutov <vl@nginx.com>
parents: 1015
diff changeset
387 </para>
e582a10b1917 Documented the "proxy_cache_purge" and "fastcgi_cache_purge" directives.
Vladimir Homutov <vl@nginx.com>
parents: 1015
diff changeset
388
e582a10b1917 Documented the "proxy_cache_purge" and "fastcgi_cache_purge" directives.
Vladimir Homutov <vl@nginx.com>
parents: 1015
diff changeset
389 <para>
e582a10b1917 Documented the "proxy_cache_purge" and "fastcgi_cache_purge" directives.
Vladimir Homutov <vl@nginx.com>
parents: 1015
diff changeset
390 If the <link id="fastcgi_cache_key">cache key</link> of a purge request ends
e582a10b1917 Documented the "proxy_cache_purge" and "fastcgi_cache_purge" directives.
Vladimir Homutov <vl@nginx.com>
parents: 1015
diff changeset
391 with an asterisk (“<literal>*</literal>”), all cache entries matching the
e582a10b1917 Documented the "proxy_cache_purge" and "fastcgi_cache_purge" directives.
Vladimir Homutov <vl@nginx.com>
parents: 1015
diff changeset
392 wildcard key will be removed from the cache.
e582a10b1917 Documented the "proxy_cache_purge" and "fastcgi_cache_purge" directives.
Vladimir Homutov <vl@nginx.com>
parents: 1015
diff changeset
393 </para>
e582a10b1917 Documented the "proxy_cache_purge" and "fastcgi_cache_purge" directives.
Vladimir Homutov <vl@nginx.com>
parents: 1015
diff changeset
394
e582a10b1917 Documented the "proxy_cache_purge" and "fastcgi_cache_purge" directives.
Vladimir Homutov <vl@nginx.com>
parents: 1015
diff changeset
395 <para>
e582a10b1917 Documented the "proxy_cache_purge" and "fastcgi_cache_purge" directives.
Vladimir Homutov <vl@nginx.com>
parents: 1015
diff changeset
396 Example configuration:
e582a10b1917 Documented the "proxy_cache_purge" and "fastcgi_cache_purge" directives.
Vladimir Homutov <vl@nginx.com>
parents: 1015
diff changeset
397 <example>
e582a10b1917 Documented the "proxy_cache_purge" and "fastcgi_cache_purge" directives.
Vladimir Homutov <vl@nginx.com>
parents: 1015
diff changeset
398 fastcgi_cache_path /data/nginx/cache keys_zone=cache_zone:10m;
e582a10b1917 Documented the "proxy_cache_purge" and "fastcgi_cache_purge" directives.
Vladimir Homutov <vl@nginx.com>
parents: 1015
diff changeset
399
e582a10b1917 Documented the "proxy_cache_purge" and "fastcgi_cache_purge" directives.
Vladimir Homutov <vl@nginx.com>
parents: 1015
diff changeset
400 map $request_method $purge_method {
e582a10b1917 Documented the "proxy_cache_purge" and "fastcgi_cache_purge" directives.
Vladimir Homutov <vl@nginx.com>
parents: 1015
diff changeset
401 PURGE 1;
e582a10b1917 Documented the "proxy_cache_purge" and "fastcgi_cache_purge" directives.
Vladimir Homutov <vl@nginx.com>
parents: 1015
diff changeset
402 default 0;
e582a10b1917 Documented the "proxy_cache_purge" and "fastcgi_cache_purge" directives.
Vladimir Homutov <vl@nginx.com>
parents: 1015
diff changeset
403 }
e582a10b1917 Documented the "proxy_cache_purge" and "fastcgi_cache_purge" directives.
Vladimir Homutov <vl@nginx.com>
parents: 1015
diff changeset
404
e582a10b1917 Documented the "proxy_cache_purge" and "fastcgi_cache_purge" directives.
Vladimir Homutov <vl@nginx.com>
parents: 1015
diff changeset
405 server {
e582a10b1917 Documented the "proxy_cache_purge" and "fastcgi_cache_purge" directives.
Vladimir Homutov <vl@nginx.com>
parents: 1015
diff changeset
406 ...
e582a10b1917 Documented the "proxy_cache_purge" and "fastcgi_cache_purge" directives.
Vladimir Homutov <vl@nginx.com>
parents: 1015
diff changeset
407 location / {
e582a10b1917 Documented the "proxy_cache_purge" and "fastcgi_cache_purge" directives.
Vladimir Homutov <vl@nginx.com>
parents: 1015
diff changeset
408 fastcgi_pass backend;
e582a10b1917 Documented the "proxy_cache_purge" and "fastcgi_cache_purge" directives.
Vladimir Homutov <vl@nginx.com>
parents: 1015
diff changeset
409 fastcgi_cache cache_zone;
e582a10b1917 Documented the "proxy_cache_purge" and "fastcgi_cache_purge" directives.
Vladimir Homutov <vl@nginx.com>
parents: 1015
diff changeset
410 fastcgi_cache_key $uri;
e582a10b1917 Documented the "proxy_cache_purge" and "fastcgi_cache_purge" directives.
Vladimir Homutov <vl@nginx.com>
parents: 1015
diff changeset
411 fastcgi_cache_purge $purge_method;
e582a10b1917 Documented the "proxy_cache_purge" and "fastcgi_cache_purge" directives.
Vladimir Homutov <vl@nginx.com>
parents: 1015
diff changeset
412 }
e582a10b1917 Documented the "proxy_cache_purge" and "fastcgi_cache_purge" directives.
Vladimir Homutov <vl@nginx.com>
parents: 1015
diff changeset
413 }
e582a10b1917 Documented the "proxy_cache_purge" and "fastcgi_cache_purge" directives.
Vladimir Homutov <vl@nginx.com>
parents: 1015
diff changeset
414 </example>
e582a10b1917 Documented the "proxy_cache_purge" and "fastcgi_cache_purge" directives.
Vladimir Homutov <vl@nginx.com>
parents: 1015
diff changeset
415 <note>
1128
1594ed379f1f De-i18n'ed <commercial_version/>.
Ruslan Ermilov <ru@nginx.com>
parents: 1088
diff changeset
416 This functionality is available as part of our
1594ed379f1f De-i18n'ed <commercial_version/>.
Ruslan Ermilov <ru@nginx.com>
parents: 1088
diff changeset
417 <commercial_version>commercial subscription</commercial_version>.
1028
e582a10b1917 Documented the "proxy_cache_purge" and "fastcgi_cache_purge" directives.
Vladimir Homutov <vl@nginx.com>
parents: 1015
diff changeset
418 </note>
e582a10b1917 Documented the "proxy_cache_purge" and "fastcgi_cache_purge" directives.
Vladimir Homutov <vl@nginx.com>
parents: 1015
diff changeset
419 </para>
e582a10b1917 Documented the "proxy_cache_purge" and "fastcgi_cache_purge" directives.
Vladimir Homutov <vl@nginx.com>
parents: 1015
diff changeset
420
e582a10b1917 Documented the "proxy_cache_purge" and "fastcgi_cache_purge" directives.
Vladimir Homutov <vl@nginx.com>
parents: 1015
diff changeset
421 </directive>
e582a10b1917 Documented the "proxy_cache_purge" and "fastcgi_cache_purge" directives.
Vladimir Homutov <vl@nginx.com>
parents: 1015
diff changeset
422
e582a10b1917 Documented the "proxy_cache_purge" and "fastcgi_cache_purge" directives.
Vladimir Homutov <vl@nginx.com>
parents: 1015
diff changeset
423
1011
2ad2f30efdf2 Documented the "fastcgi_" and "proxy_cache_revalidate" directives.
Vladimir Homutov <vl@nginx.com>
parents: 1005
diff changeset
424 <directive name="fastcgi_cache_revalidate">
2ad2f30efdf2 Documented the "fastcgi_" and "proxy_cache_revalidate" directives.
Vladimir Homutov <vl@nginx.com>
parents: 1005
diff changeset
425 <syntax><literal>on</literal> | <literal>off</literal></syntax>
2ad2f30efdf2 Documented the "fastcgi_" and "proxy_cache_revalidate" directives.
Vladimir Homutov <vl@nginx.com>
parents: 1005
diff changeset
426 <default>off</default>
2ad2f30efdf2 Documented the "fastcgi_" and "proxy_cache_revalidate" directives.
Vladimir Homutov <vl@nginx.com>
parents: 1005
diff changeset
427 <context>http</context>
2ad2f30efdf2 Documented the "fastcgi_" and "proxy_cache_revalidate" directives.
Vladimir Homutov <vl@nginx.com>
parents: 1005
diff changeset
428 <context>server</context>
2ad2f30efdf2 Documented the "fastcgi_" and "proxy_cache_revalidate" directives.
Vladimir Homutov <vl@nginx.com>
parents: 1005
diff changeset
429 <context>location</context>
1015
af77dd40abeb Documented the appearance of "fastcgi_" and "proxy_cache_revalidate".
Vladimir Homutov <vl@nginx.com>
parents: 1011
diff changeset
430 <appeared-in>1.5.7</appeared-in>
1011
2ad2f30efdf2 Documented the "fastcgi_" and "proxy_cache_revalidate" directives.
Vladimir Homutov <vl@nginx.com>
parents: 1005
diff changeset
431
2ad2f30efdf2 Documented the "fastcgi_" and "proxy_cache_revalidate" directives.
Vladimir Homutov <vl@nginx.com>
parents: 1005
diff changeset
432 <para>
2ad2f30efdf2 Documented the "fastcgi_" and "proxy_cache_revalidate" directives.
Vladimir Homutov <vl@nginx.com>
parents: 1005
diff changeset
433 Enables revalidation of expired cache items using conditional requests with
2ad2f30efdf2 Documented the "fastcgi_" and "proxy_cache_revalidate" directives.
Vladimir Homutov <vl@nginx.com>
parents: 1005
diff changeset
434 the <header>If-Modified-Since</header> header field.
2ad2f30efdf2 Documented the "fastcgi_" and "proxy_cache_revalidate" directives.
Vladimir Homutov <vl@nginx.com>
parents: 1005
diff changeset
435 </para>
2ad2f30efdf2 Documented the "fastcgi_" and "proxy_cache_revalidate" directives.
Vladimir Homutov <vl@nginx.com>
parents: 1005
diff changeset
436
2ad2f30efdf2 Documented the "fastcgi_" and "proxy_cache_revalidate" directives.
Vladimir Homutov <vl@nginx.com>
parents: 1005
diff changeset
437 </directive>
2ad2f30efdf2 Documented the "fastcgi_" and "proxy_cache_revalidate" directives.
Vladimir Homutov <vl@nginx.com>
parents: 1005
diff changeset
438
2ad2f30efdf2 Documented the "fastcgi_" and "proxy_cache_revalidate" directives.
Vladimir Homutov <vl@nginx.com>
parents: 1005
diff changeset
439
298
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
440 <directive name="fastcgi_cache_use_stale">
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
441 <syntax>
364
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 351
diff changeset
442 <literal>error</literal> |
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 351
diff changeset
443 <literal>timeout</literal> |
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 351
diff changeset
444 <literal>invalid_header</literal> |
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 351
diff changeset
445 <literal>updating</literal> |
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 351
diff changeset
446 <literal>http_500</literal> |
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 351
diff changeset
447 <literal>http_503</literal> |
917
e26a18eb5ccd Documented http_403 in proxy_next_upstream and friends.
Maxim Dounin <mdounin@mdounin.ru>
parents: 907
diff changeset
448 <literal>http_403</literal> |
364
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 351
diff changeset
449 <literal>http_404</literal> |
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 351
diff changeset
450 <literal>off</literal>
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 351
diff changeset
451 ...</syntax>
298
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
452 <default>off</default>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
453 <context>http</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
454 <context>server</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
455 <context>location</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
456
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
457 <para>
966
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
458 Determines in which cases a stale cached response can be used
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
459 when an error occurs during communication with the FastCGI server.
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
460 The directive’s parameters match the parameters of the
298
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
461 <link id="fastcgi_next_upstream"/> directive.
505
837bcf62b628 Emphasized on what the "updating" parameter of the "fastcgi_cache_use_stale"
Ruslan Ermilov <ru@nginx.com>
parents: 498
diff changeset
462 </para>
837bcf62b628 Emphasized on what the "updating" parameter of the "fastcgi_cache_use_stale"
Ruslan Ermilov <ru@nginx.com>
parents: 498
diff changeset
463
837bcf62b628 Emphasized on what the "updating" parameter of the "fastcgi_cache_use_stale"
Ruslan Ermilov <ru@nginx.com>
parents: 498
diff changeset
464 <para>
298
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
465 Additionally, the <literal>updating</literal> parameter permits
966
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
466 using a stale cached response if it is currently being updated.
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
467 This allows minimizing the number of accesses to FastCGI servers
505
837bcf62b628 Emphasized on what the "updating" parameter of the "fastcgi_cache_use_stale"
Ruslan Ermilov <ru@nginx.com>
parents: 498
diff changeset
468 when updating cached data.
837bcf62b628 Emphasized on what the "updating" parameter of the "fastcgi_cache_use_stale"
Ruslan Ermilov <ru@nginx.com>
parents: 498
diff changeset
469 </para>
837bcf62b628 Emphasized on what the "updating" parameter of the "fastcgi_cache_use_stale"
Ruslan Ermilov <ru@nginx.com>
parents: 498
diff changeset
470
837bcf62b628 Emphasized on what the "updating" parameter of the "fastcgi_cache_use_stale"
Ruslan Ermilov <ru@nginx.com>
parents: 498
diff changeset
471 <para>
509
0e55c9a48da9 Trimmed space at EOL.
Ruslan Ermilov <ru@nginx.com>
parents: 508
diff changeset
472 To minimize the number of accesses to FastCGI servers when
505
837bcf62b628 Emphasized on what the "updating" parameter of the "fastcgi_cache_use_stale"
Ruslan Ermilov <ru@nginx.com>
parents: 498
diff changeset
473 populating a new cache element, the <link id="fastcgi_cache_lock"/>
837bcf62b628 Emphasized on what the "updating" parameter of the "fastcgi_cache_use_stale"
Ruslan Ermilov <ru@nginx.com>
parents: 498
diff changeset
474 directive can be used.
298
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
475 </para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
476
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
477 </directive>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
478
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
479
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
480 <directive name="fastcgi_cache_valid">
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
481 <syntax>[<value>code</value> ...] <value>time</value></syntax>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
482 <default/>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
483 <context>http</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
484 <context>server</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
485 <context>location</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
486
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
487 <para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
488 Sets caching time for different response codes.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
489 For example, the following directives
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
490 <example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
491 fastcgi_cache_valid 200 302 10m;
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
492 fastcgi_cache_valid 404 1m;
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
493 </example>
966
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
494 set 10 minutes of caching for responses with codes 200 and 302
298
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
495 and 1 minute for responses with code 404.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
496 </para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
497
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
498 <para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
499 If only caching <value>time</value> is specified
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
500 <example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
501 fastcgi_cache_valid 5m;
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
502 </example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
503 then only 200, 301, and 302 responses are cached.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
504 </para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
505
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
506 <para>
966
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
507 In addition, the <literal>any</literal> parameter can be specified
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
508 to cache any responses:
298
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
509 <example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
510 fastcgi_cache_valid 200 302 10m;
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
511 fastcgi_cache_valid 301 1h;
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
512 fastcgi_cache_valid any 1m;
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
513 </example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
514 </para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
515
506
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 505
diff changeset
516 <para>
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 505
diff changeset
517 Parameters of caching can also be set directly
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 505
diff changeset
518 in the response header.
966
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
519 This has higher priority than setting of caching time using the directive.
506
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 505
diff changeset
520 The <header>X-Accel-Expires</header> header field sets caching time of a
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 505
diff changeset
521 response in seconds.
966
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
522 The zero value disables caching for a response.
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
523 If a value starts with the <literal>@</literal> prefix, it sets an absolute
506
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 505
diff changeset
524 time in seconds since Epoch, up to which the response may be cached.
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 505
diff changeset
525 If header does not include the <header>X-Accel-Expires</header> field,
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 505
diff changeset
526 parameters of caching may be set in the header fields
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 505
diff changeset
527 <header>Expires</header> or <header>Cache-Control</header>.
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 505
diff changeset
528 If a header includes the <header>Set-Cookie</header> field, such a
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 505
diff changeset
529 response will not be cached.
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 505
diff changeset
530 Processing of one or more of these response header fields can be disabled
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 505
diff changeset
531 using the <link id="fastcgi_ignore_headers"/> directive.
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 505
diff changeset
532 </para>
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 505
diff changeset
533
298
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
534 </directive>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
535
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
536
862
6a40b8e7219a Documented the "fastcgi_catch_stderr" directive.
Homutov Vladimir <vl@nginx.com>
parents: 815
diff changeset
537 <directive name="fastcgi_catch_stderr">
6a40b8e7219a Documented the "fastcgi_catch_stderr" directive.
Homutov Vladimir <vl@nginx.com>
parents: 815
diff changeset
538 <syntax><value>string</value></syntax>
6a40b8e7219a Documented the "fastcgi_catch_stderr" directive.
Homutov Vladimir <vl@nginx.com>
parents: 815
diff changeset
539 <default/>
6a40b8e7219a Documented the "fastcgi_catch_stderr" directive.
Homutov Vladimir <vl@nginx.com>
parents: 815
diff changeset
540 <context>http</context>
6a40b8e7219a Documented the "fastcgi_catch_stderr" directive.
Homutov Vladimir <vl@nginx.com>
parents: 815
diff changeset
541 <context>server</context>
6a40b8e7219a Documented the "fastcgi_catch_stderr" directive.
Homutov Vladimir <vl@nginx.com>
parents: 815
diff changeset
542 <context>location</context>
6a40b8e7219a Documented the "fastcgi_catch_stderr" directive.
Homutov Vladimir <vl@nginx.com>
parents: 815
diff changeset
543
6a40b8e7219a Documented the "fastcgi_catch_stderr" directive.
Homutov Vladimir <vl@nginx.com>
parents: 815
diff changeset
544 <para>
6a40b8e7219a Documented the "fastcgi_catch_stderr" directive.
Homutov Vladimir <vl@nginx.com>
parents: 815
diff changeset
545 Sets a string to search for in the error stream of a response
6a40b8e7219a Documented the "fastcgi_catch_stderr" directive.
Homutov Vladimir <vl@nginx.com>
parents: 815
diff changeset
546 received from a FastCGI server.
6a40b8e7219a Documented the "fastcgi_catch_stderr" directive.
Homutov Vladimir <vl@nginx.com>
parents: 815
diff changeset
547 If the <value>string</value> is found then it is considered that the FastCGI
966
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
548 server has returned an <link id="fastcgi_next_upstream">invalid response</link>.
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
549 This allows handling application errors in nginx, for example:
862
6a40b8e7219a Documented the "fastcgi_catch_stderr" directive.
Homutov Vladimir <vl@nginx.com>
parents: 815
diff changeset
550 <example>
6a40b8e7219a Documented the "fastcgi_catch_stderr" directive.
Homutov Vladimir <vl@nginx.com>
parents: 815
diff changeset
551 location /php {
6a40b8e7219a Documented the "fastcgi_catch_stderr" directive.
Homutov Vladimir <vl@nginx.com>
parents: 815
diff changeset
552 fastcgi_pass backend:9000;
6a40b8e7219a Documented the "fastcgi_catch_stderr" directive.
Homutov Vladimir <vl@nginx.com>
parents: 815
diff changeset
553 ...
6a40b8e7219a Documented the "fastcgi_catch_stderr" directive.
Homutov Vladimir <vl@nginx.com>
parents: 815
diff changeset
554 fastcgi_catch_stderr "PHP Fatal error";
6a40b8e7219a Documented the "fastcgi_catch_stderr" directive.
Homutov Vladimir <vl@nginx.com>
parents: 815
diff changeset
555 fastcgi_next_upstream error timeout invalid_header;
6a40b8e7219a Documented the "fastcgi_catch_stderr" directive.
Homutov Vladimir <vl@nginx.com>
parents: 815
diff changeset
556 }
6a40b8e7219a Documented the "fastcgi_catch_stderr" directive.
Homutov Vladimir <vl@nginx.com>
parents: 815
diff changeset
557 </example>
6a40b8e7219a Documented the "fastcgi_catch_stderr" directive.
Homutov Vladimir <vl@nginx.com>
parents: 815
diff changeset
558 </para>
6a40b8e7219a Documented the "fastcgi_catch_stderr" directive.
Homutov Vladimir <vl@nginx.com>
parents: 815
diff changeset
559
6a40b8e7219a Documented the "fastcgi_catch_stderr" directive.
Homutov Vladimir <vl@nginx.com>
parents: 815
diff changeset
560 </directive>
6a40b8e7219a Documented the "fastcgi_catch_stderr" directive.
Homutov Vladimir <vl@nginx.com>
parents: 815
diff changeset
561
6a40b8e7219a Documented the "fastcgi_catch_stderr" directive.
Homutov Vladimir <vl@nginx.com>
parents: 815
diff changeset
562
298
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
563 <directive name="fastcgi_connect_timeout">
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
564 <syntax><value>time</value></syntax>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
565 <default>60s</default>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
566 <context>http</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
567 <context>server</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
568 <context>location</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
569
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
570 <para>
966
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
571 Defines a timeout for establishing a connection with a FastCGI server.
298
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
572 It should be noted that this timeout cannot usually exceed 75 seconds.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
573 </para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
574
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
575 </directive>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
576
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
577
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
578 <directive name="fastcgi_hide_header">
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
579 <syntax><value>field</value></syntax>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
580 <default/>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
581 <context>http</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
582 <context>server</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
583 <context>location</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
584
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
585 <para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
586 By default,
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
587 nginx does not pass the header fields <header>Status</header> and
966
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
588 <header>X-Accel-...</header> from the response of a FastCGI
298
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
589 server to a client.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
590 The <literal>fastcgi_hide_header</literal> directive sets additional fields
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
591 that will not be passed.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
592 If, on the contrary, the passing of fields needs to be permitted,
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
593 the <link id="fastcgi_pass_header"/> directive can be used.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
594 </para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
595
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
596 </directive>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
597
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
598
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
599 <directive name="fastcgi_ignore_client_abort">
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
600 <syntax><literal>on</literal> | <literal>off</literal></syntax>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
601 <default>off</default>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
602 <context>http</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
603 <context>server</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
604 <context>location</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
605
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
606 <para>
966
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
607 Determines whether the connection with a FastCGI server should be
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
608 closed when a client closes a connection without waiting
298
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
609 for a response.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
610 </para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
611
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
612 </directive>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
613
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
614
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
615 <directive name="fastcgi_ignore_headers">
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
616 <syntax><value>field</value> ...</syntax>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
617 <default/>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
618 <context>http</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
619 <context>server</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
620 <context>location</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
621
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
622 <para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
623 Disables processing of certain response header fields from the FastCGI server.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
624 The following fields can be ignored: <header>X-Accel-Redirect</header>,
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
625 <header>X-Accel-Expires</header>, <header>X-Accel-Limit-Rate</header> (1.1.6),
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
626 <header>X-Accel-Buffering</header> (1.1.6),
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
627 <header>X-Accel-Charset</header> (1.1.6), <header>Expires</header>,
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
628 <header>Cache-Control</header>, and <header>Set-Cookie</header> (0.8.44).
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
629 </para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
630
506
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 505
diff changeset
631 <para>
966
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
632 If not disabled, processing of these header fields has the following
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
633 effect:
506
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 505
diff changeset
634 <list type="bullet" compact="no">
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 505
diff changeset
635
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 505
diff changeset
636 <listitem>
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 505
diff changeset
637 <header>X-Accel-Expires</header>, <header>Expires</header>,
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 505
diff changeset
638 <header>Cache-Control</header>, and <header>Set-Cookie</header>
966
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
639 set the parameters of response <link id="fastcgi_cache_valid">caching</link>;
506
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 505
diff changeset
640 </listitem>
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 505
diff changeset
641
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 505
diff changeset
642 <listitem>
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 505
diff changeset
643 <header>X-Accel-Redirect</header> performs an
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 505
diff changeset
644 <link doc="ngx_http_core_module.xml" id="internal">internal
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 505
diff changeset
645 redirect</link> to the specified URI;
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 505
diff changeset
646 </listitem>
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 505
diff changeset
647
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 505
diff changeset
648 <listitem>
966
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
649 <header>X-Accel-Limit-Rate</header> sets the
506
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 505
diff changeset
650 <link doc="ngx_http_core_module.xml" id="limit_rate">rate
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 505
diff changeset
651 limit</link> for transmission of a response to a client;
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 505
diff changeset
652 </listitem>
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 505
diff changeset
653
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 505
diff changeset
654 <listitem>
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 505
diff changeset
655 <header>X-Accel-Buffering</header> enables or disables
995
c5ccf511346a Documented the "fastcgi_buffering" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 966
diff changeset
656 <link id="fastcgi_buffering">buffering</link> of a response;
506
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 505
diff changeset
657 </listitem>
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 505
diff changeset
658
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 505
diff changeset
659 <listitem>
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 505
diff changeset
660 <header>X-Accel-Charset</header> sets the desired
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 505
diff changeset
661 <link doc="ngx_http_charset_module.xml" id="charset"/>
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 505
diff changeset
662 of a response.
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 505
diff changeset
663 </listitem>
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 505
diff changeset
664
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 505
diff changeset
665 </list>
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 505
diff changeset
666 </para>
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 505
diff changeset
667
298
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
668 </directive>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
669
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
670
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
671 <directive name="fastcgi_index">
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
672 <syntax><value>name</value></syntax>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
673 <default/>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
674 <context>http</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
675 <context>server</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
676 <context>location</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
677
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
678 <para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
679 Sets a file name that will be appended after a URI that ends with
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
680 a slash, in the value of the <var>$fastcgi_script_name</var> variable.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
681 For example, with these settings
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
682 <example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
683 fastcgi_index index.php;
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
684 fastcgi_param SCRIPT_FILENAME /home/www/scripts/php$fastcgi_script_name;
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
685 </example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
686 and the “<literal>/page.php</literal>” request,
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
687 the <literal>SCRIPT_FILENAME</literal> parameter will be equal to
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
688 “<literal>/home/www/scripts/php/page.php</literal>”,
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
689 and with the “<literal>/</literal>” request it will be equal to
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
690 “<literal>/home/www/scripts/php/index.php</literal>”.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
691 </para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
692
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
693 </directive>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
694
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
695
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
696 <directive name="fastcgi_intercept_errors">
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
697 <syntax><literal>on</literal> | <literal>off</literal></syntax>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
698 <default>off</default>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
699 <context>http</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
700 <context>server</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
701 <context>location</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
702
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
703 <para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
704 Determines whether FastCGI server responses with codes greater than or equal
907
43887f41bb17 Corrected the descriptions of {proxy,fastcgi}_intercept_errors.
Ruslan Ermilov <ru@nginx.com>
parents: 862
diff changeset
705 to 300 should be passed to a client or be redirected to nginx for processing
966
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
706 with the <link doc="ngx_http_core_module.xml" id="error_page"/> directive.
298
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
707 </para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
708
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
709 </directive>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
710
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
711
316
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 310
diff changeset
712 <directive name="fastcgi_keep_conn">
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 310
diff changeset
713 <syntax><literal>on</literal> | <literal>off</literal></syntax>
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 310
diff changeset
714 <default>off</default>
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 310
diff changeset
715 <context>http</context>
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 310
diff changeset
716 <context>server</context>
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 310
diff changeset
717 <context>location</context>
498
65843513cff5 Documented that "fastcgi_keep_conn" appeared in 1.1.4.
Ruslan Ermilov <ru@nginx.com>
parents: 411
diff changeset
718 <appeared-in>1.1.4</appeared-in>
316
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 310
diff changeset
719
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 310
diff changeset
720 <para>
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 310
diff changeset
721 By default, a FastCGI server will close a connection right after
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 310
diff changeset
722 sending the response.
966
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
723 However, when this directive is set to the value <literal>on</literal>,
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
724 nginx will instruct a FastCGI server to keep connections open.
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
725 This is necessary, in particular, for
316
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 310
diff changeset
726 <link doc="ngx_http_upstream_module.xml" id="keepalive"/>
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 310
diff changeset
727 connections to FastCGI servers to function.
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 310
diff changeset
728 </para>
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 310
diff changeset
729
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 310
diff changeset
730 </directive>
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 310
diff changeset
731
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 310
diff changeset
732
411
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
733 <directive name="fastcgi_max_temp_file_size">
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
734 <syntax><value>size</value></syntax>
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
735 <default>1024m</default>
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
736 <context>http</context>
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
737 <context>server</context>
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
738 <context>location</context>
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
739
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
740 <para>
995
c5ccf511346a Documented the "fastcgi_buffering" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 966
diff changeset
741 When <link id="fastcgi_buffering">buffering</link> of responses from the FastCGI
c5ccf511346a Documented the "fastcgi_buffering" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 966
diff changeset
742 server is enabled, and the whole response does not fit into the memory buffers
411
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
743 set by the <link id="fastcgi_buffer_size"/> and <link id="fastcgi_buffers"/>
966
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
744 directives, a part of the response can be saved to a temporary file.
411
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
745 This directive sets the maximum <value>size</value> of a temporary file.
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
746 The size of data written to a temporary file at a time is set
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
747 by the <link id="fastcgi_temp_file_write_size"/> directive.
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
748 </para>
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
749
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
750 <para>
966
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
751 The zero value disables buffering of responses to temporary files.
411
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
752 </para>
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
753
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
754 </directive>
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
755
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
756
298
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
757 <directive name="fastcgi_next_upstream">
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
758 <syntax>
364
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 351
diff changeset
759 <literal>error</literal> |
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 351
diff changeset
760 <literal>timeout</literal> |
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 351
diff changeset
761 <literal>invalid_header</literal> |
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 351
diff changeset
762 <literal>http_500</literal> |
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 351
diff changeset
763 <literal>http_503</literal> |
917
e26a18eb5ccd Documented http_403 in proxy_next_upstream and friends.
Maxim Dounin <mdounin@mdounin.ru>
parents: 907
diff changeset
764 <literal>http_403</literal> |
364
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 351
diff changeset
765 <literal>http_404</literal> |
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 351
diff changeset
766 <literal>off</literal>
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 351
diff changeset
767 ...</syntax>
298
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
768 <default>error timeout</default>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
769 <context>http</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
770 <context>server</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
771 <context>location</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
772
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
773 <para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
774 Specifies in which cases a request should be passed to the next server:
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
775 <list type="tag">
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
776
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
777 <tag-name><literal>error</literal></tag-name>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
778 <tag-desc>an error occurred while establishing a connection with the
966
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
779 server, passing a request to it, or reading the response header;</tag-desc>
298
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
780
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
781 <tag-name><literal>timeout</literal></tag-name>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
782 <tag-desc>a timeout has occurred while establishing a connection with the
966
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
783 server, passing a request to it, or reading the response header;</tag-desc>
298
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
784
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
785 <tag-name><literal>invalid_header</literal></tag-name>
966
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
786 <tag-desc>a server returned an empty or invalid response;</tag-desc>
298
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
787
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
788 <tag-name><literal>http_500</literal></tag-name>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
789 <tag-desc>a server returned a response with the code 500;</tag-desc>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
790
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
791 <tag-name><literal>http_503</literal></tag-name>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
792 <tag-desc>a server returned a response with the code 503;</tag-desc>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
793
917
e26a18eb5ccd Documented http_403 in proxy_next_upstream and friends.
Maxim Dounin <mdounin@mdounin.ru>
parents: 907
diff changeset
794 <tag-name><literal>http_403</literal></tag-name>
e26a18eb5ccd Documented http_403 in proxy_next_upstream and friends.
Maxim Dounin <mdounin@mdounin.ru>
parents: 907
diff changeset
795 <tag-desc>a server returned a response with the code 403;</tag-desc>
e26a18eb5ccd Documented http_403 in proxy_next_upstream and friends.
Maxim Dounin <mdounin@mdounin.ru>
parents: 907
diff changeset
796
298
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
797 <tag-name><literal>http_404</literal></tag-name>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
798 <tag-desc>a server returned a response with the code 404;</tag-desc>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
799
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
800 <tag-name><literal>off</literal></tag-name>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
801 <tag-desc>disables passing a request to the next server.</tag-desc>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
802
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
803 </list>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
804 </para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
805
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
806 <para>
966
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
807 One should bear in mind that passing a request to the next server is
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
808 only possible if nothing has been sent to a client yet.
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
809 That is, if an error or timeout occurs in the middle of the
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
810 transferring of a response, fixing this is impossible.
298
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
811 </para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
812
942
ba3d6ade3513 Elaborate on upstream server failures.
Ruslan Ermilov <ru@nginx.com>
parents: 917
diff changeset
813 <para>
ba3d6ade3513 Elaborate on upstream server failures.
Ruslan Ermilov <ru@nginx.com>
parents: 917
diff changeset
814 The directive also defines what is considered an unsuccessful attempt
ba3d6ade3513 Elaborate on upstream server failures.
Ruslan Ermilov <ru@nginx.com>
parents: 917
diff changeset
815 of communication with a
ba3d6ade3513 Elaborate on upstream server failures.
Ruslan Ermilov <ru@nginx.com>
parents: 917
diff changeset
816 <link doc="ngx_http_upstream_module.xml" id="server"/>.
ba3d6ade3513 Elaborate on upstream server failures.
Ruslan Ermilov <ru@nginx.com>
parents: 917
diff changeset
817 The cases of <literal>error</literal>, <literal>timeout</literal> and
ba3d6ade3513 Elaborate on upstream server failures.
Ruslan Ermilov <ru@nginx.com>
parents: 917
diff changeset
818 <literal>invalid_header</literal> are always considered unsuccessful attempts,
ba3d6ade3513 Elaborate on upstream server failures.
Ruslan Ermilov <ru@nginx.com>
parents: 917
diff changeset
819 even if they are not specified in the directive.
ba3d6ade3513 Elaborate on upstream server failures.
Ruslan Ermilov <ru@nginx.com>
parents: 917
diff changeset
820 The cases of <literal>http_500</literal> and <literal>http_503</literal> are
ba3d6ade3513 Elaborate on upstream server failures.
Ruslan Ermilov <ru@nginx.com>
parents: 917
diff changeset
821 considered unsuccessful attempts only if they are specified in the directive.
ba3d6ade3513 Elaborate on upstream server failures.
Ruslan Ermilov <ru@nginx.com>
parents: 917
diff changeset
822 The cases of <literal>http_403</literal> and <literal>http_404</literal>
ba3d6ade3513 Elaborate on upstream server failures.
Ruslan Ermilov <ru@nginx.com>
parents: 917
diff changeset
823 are never considered unsuccessful attempts.
ba3d6ade3513 Elaborate on upstream server failures.
Ruslan Ermilov <ru@nginx.com>
parents: 917
diff changeset
824 </para>
ba3d6ade3513 Elaborate on upstream server failures.
Ruslan Ermilov <ru@nginx.com>
parents: 917
diff changeset
825
298
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
826 </directive>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
827
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
828
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
829 <directive name="fastcgi_no_cache">
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
830 <syntax><value>string</value> ...</syntax>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
831 <default/>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
832 <context>http</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
833 <context>server</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
834 <context>location</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
835
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
836 <para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
837 Defines conditions under which the response will not be saved to a cache.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
838 If at least one value of the string parameters is not empty and is not
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
839 equal to “0” then the response will not be saved:
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
840 <example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
841 fastcgi_no_cache $cookie_nocache $arg_nocache$arg_comment;
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
842 fastcgi_no_cache $http_pragma $http_authorization;
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
843 </example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
844 Can be used along with the <link id="fastcgi_cache_bypass"/> directive.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
845 </para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
846
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
847 </directive>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
848
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
849
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
850 <directive name="fastcgi_param">
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
851 <syntax>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
852 <value>parameter</value> <value>value</value>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
853 [<literal>if_not_empty</literal>]</syntax>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
854 <default/>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
855 <context>http</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
856 <context>server</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
857 <context>location</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
858
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
859 <para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
860 Sets a <value>parameter</value> that should be passed to the FastCGI server.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
861 A <value>value</value> can contain text, variables, and their combination.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
862 These directives are inherited from the previous level if and
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
863 only if there are no
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
864 <literal>fastcgi_param</literal>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
865 directives defined on the current level.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
866 </para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
867
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
868 <para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
869 The following example shows the minimum required settings for PHP:
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
870 <example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
871 fastcgi_param SCRIPT_FILENAME /home/www/scripts/php$fastcgi_script_name;
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
872 fastcgi_param QUERY_STRING $query_string;
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
873 </example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
874 </para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
875
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
876 <para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
877 The <literal>SCRIPT_FILENAME</literal> parameter is used in PHP for
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
878 determining the script name, and the <literal>QUERY_STRING</literal>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
879 parameter is used to pass request parameters.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
880 </para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
881
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
882 <para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
883 For scripts that process <literal>POST</literal> requests, the
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
884 following three parameters are also required:
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
885 <example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
886 fastcgi_param REQUEST_METHOD $request_method;
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
887 fastcgi_param CONTENT_TYPE $content_type;
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
888 fastcgi_param CONTENT_LENGTH $content_length;
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
889 </example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
890 </para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
891
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
892 <para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
893 If PHP was built with the <literal>--enable-force-cgi-redirect</literal>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
894 configuration parameter, the <literal>REDIRECT_STATUS</literal> parameter
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
895 should also be passed with the value “200”:
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
896 <example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
897 fastcgi_param REDIRECT_STATUS 200;
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
898 </example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
899 </para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
900
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
901 <para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
902 If a directive is specified with <literal>if_not_empty</literal> (1.1.11) then
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
903 such a parameter will not be passed to the server until its value is not empty:
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
904 <example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
905 fastcgi_param HTTPS $https if_not_empty;
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
906 </example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
907 </para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
908
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
909 </directive>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
910
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
911
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
912 <directive name="fastcgi_pass">
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
913 <syntax><value>address</value></syntax>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
914 <default/>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
915 <context>location</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
916 <context>if in location</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
917
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
918 <para>
966
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
919 Sets the address of a FastCGI server.
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
920 The address can be specified as a domain name or IP address,
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
921 and an optional port:
298
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
922 <example>
351
a4fa80755eab Consistently strip initial offset in examples.
Ruslan Ermilov <ru@nginx.com>
parents: 316
diff changeset
923 fastcgi_pass localhost:9000;
298
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
924 </example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
925 or as a UNIX-domain socket path:
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
926 <example>
351
a4fa80755eab Consistently strip initial offset in examples.
Ruslan Ermilov <ru@nginx.com>
parents: 316
diff changeset
927 fastcgi_pass unix:/tmp/fastcgi.socket;
298
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
928 </example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
929 </para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
930
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
931 <para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
932 If a domain name resolves to several addresses, all of them will be
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
933 used in a round-robin fashion.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
934 In addition, an address can be specified as a
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
935 <link doc="ngx_http_upstream_module.xml">server group</link>.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
936 </para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
937
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
938 </directive>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
939
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
940
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
941 <directive name="fastcgi_pass_header">
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
942 <syntax><value>field</value></syntax>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
943 <default/>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
944 <context>http</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
945 <context>server</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
946 <context>location</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
947
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
948 <para>
966
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
949 Permits passing <link id="fastcgi_hide_header">otherwise disabled</link> header
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
950 fields from a FastCGI server to a client.
298
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
951 </para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
952
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
953 </directive>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
954
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
955
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
956 <directive name="fastcgi_read_timeout">
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
957 <syntax><value>time</value></syntax>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
958 <default>60s</default>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
959 <context>http</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
960 <context>server</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
961 <context>location</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
962
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
963 <para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
964 Defines a timeout for reading a response from the FastCGI server.
966
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
965 A timeout is set only between two successive read operations,
298
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
966 not for the transmission of the whole response.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
967 If a FastCGI server does not transmit anything within this time,
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
968 a connection is closed.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
969 </para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
970
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
971 </directive>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
972
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
973
793
9104a921d940 Documented "fastcgi_pass_request_body/headers" directives.
Vladimir Homutov <vl@nginx.com>
parents: 773
diff changeset
974 <directive name="fastcgi_pass_request_body">
9104a921d940 Documented "fastcgi_pass_request_body/headers" directives.
Vladimir Homutov <vl@nginx.com>
parents: 773
diff changeset
975 <syntax><literal>on</literal> | <literal>off</literal></syntax>
9104a921d940 Documented "fastcgi_pass_request_body/headers" directives.
Vladimir Homutov <vl@nginx.com>
parents: 773
diff changeset
976 <default>on</default>
9104a921d940 Documented "fastcgi_pass_request_body/headers" directives.
Vladimir Homutov <vl@nginx.com>
parents: 773
diff changeset
977 <context>http</context>
9104a921d940 Documented "fastcgi_pass_request_body/headers" directives.
Vladimir Homutov <vl@nginx.com>
parents: 773
diff changeset
978 <context>server</context>
9104a921d940 Documented "fastcgi_pass_request_body/headers" directives.
Vladimir Homutov <vl@nginx.com>
parents: 773
diff changeset
979 <context>location</context>
9104a921d940 Documented "fastcgi_pass_request_body/headers" directives.
Vladimir Homutov <vl@nginx.com>
parents: 773
diff changeset
980
9104a921d940 Documented "fastcgi_pass_request_body/headers" directives.
Vladimir Homutov <vl@nginx.com>
parents: 773
diff changeset
981 <para>
966
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
982 Indicates whether the original request body is passed
793
9104a921d940 Documented "fastcgi_pass_request_body/headers" directives.
Vladimir Homutov <vl@nginx.com>
parents: 773
diff changeset
983 to the FastCGI server.
9104a921d940 Documented "fastcgi_pass_request_body/headers" directives.
Vladimir Homutov <vl@nginx.com>
parents: 773
diff changeset
984 See also the <link id="fastcgi_pass_request_headers"/> directive.
9104a921d940 Documented "fastcgi_pass_request_body/headers" directives.
Vladimir Homutov <vl@nginx.com>
parents: 773
diff changeset
985 </para>
9104a921d940 Documented "fastcgi_pass_request_body/headers" directives.
Vladimir Homutov <vl@nginx.com>
parents: 773
diff changeset
986
9104a921d940 Documented "fastcgi_pass_request_body/headers" directives.
Vladimir Homutov <vl@nginx.com>
parents: 773
diff changeset
987 </directive>
9104a921d940 Documented "fastcgi_pass_request_body/headers" directives.
Vladimir Homutov <vl@nginx.com>
parents: 773
diff changeset
988
9104a921d940 Documented "fastcgi_pass_request_body/headers" directives.
Vladimir Homutov <vl@nginx.com>
parents: 773
diff changeset
989
9104a921d940 Documented "fastcgi_pass_request_body/headers" directives.
Vladimir Homutov <vl@nginx.com>
parents: 773
diff changeset
990 <directive name="fastcgi_pass_request_headers">
9104a921d940 Documented "fastcgi_pass_request_body/headers" directives.
Vladimir Homutov <vl@nginx.com>
parents: 773
diff changeset
991 <syntax><literal>on</literal> | <literal>off</literal></syntax>
9104a921d940 Documented "fastcgi_pass_request_body/headers" directives.
Vladimir Homutov <vl@nginx.com>
parents: 773
diff changeset
992 <default>on</default>
9104a921d940 Documented "fastcgi_pass_request_body/headers" directives.
Vladimir Homutov <vl@nginx.com>
parents: 773
diff changeset
993 <context>http</context>
9104a921d940 Documented "fastcgi_pass_request_body/headers" directives.
Vladimir Homutov <vl@nginx.com>
parents: 773
diff changeset
994 <context>server</context>
9104a921d940 Documented "fastcgi_pass_request_body/headers" directives.
Vladimir Homutov <vl@nginx.com>
parents: 773
diff changeset
995 <context>location</context>
9104a921d940 Documented "fastcgi_pass_request_body/headers" directives.
Vladimir Homutov <vl@nginx.com>
parents: 773
diff changeset
996
9104a921d940 Documented "fastcgi_pass_request_body/headers" directives.
Vladimir Homutov <vl@nginx.com>
parents: 773
diff changeset
997 <para>
966
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
998 Indicates whether the header fields of the original request are passed
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
999 to the FastCGI server.
793
9104a921d940 Documented "fastcgi_pass_request_body/headers" directives.
Vladimir Homutov <vl@nginx.com>
parents: 773
diff changeset
1000 See also the <link id="fastcgi_pass_request_body"/> directive.
9104a921d940 Documented "fastcgi_pass_request_body/headers" directives.
Vladimir Homutov <vl@nginx.com>
parents: 773
diff changeset
1001 </para>
9104a921d940 Documented "fastcgi_pass_request_body/headers" directives.
Vladimir Homutov <vl@nginx.com>
parents: 773
diff changeset
1002
9104a921d940 Documented "fastcgi_pass_request_body/headers" directives.
Vladimir Homutov <vl@nginx.com>
parents: 773
diff changeset
1003 </directive>
9104a921d940 Documented "fastcgi_pass_request_body/headers" directives.
Vladimir Homutov <vl@nginx.com>
parents: 773
diff changeset
1004
9104a921d940 Documented "fastcgi_pass_request_body/headers" directives.
Vladimir Homutov <vl@nginx.com>
parents: 773
diff changeset
1005
773
24b1b0101250 Documented "send_lowat" directive in fastcgi and proxy modules.
Vladimir Homutov <vl@nginx.com>
parents: 772
diff changeset
1006 <directive name="fastcgi_send_lowat">
24b1b0101250 Documented "send_lowat" directive in fastcgi and proxy modules.
Vladimir Homutov <vl@nginx.com>
parents: 772
diff changeset
1007 <syntax><value>size</value></syntax>
24b1b0101250 Documented "send_lowat" directive in fastcgi and proxy modules.
Vladimir Homutov <vl@nginx.com>
parents: 772
diff changeset
1008 <default>0</default>
24b1b0101250 Documented "send_lowat" directive in fastcgi and proxy modules.
Vladimir Homutov <vl@nginx.com>
parents: 772
diff changeset
1009 <context>http</context>
24b1b0101250 Documented "send_lowat" directive in fastcgi and proxy modules.
Vladimir Homutov <vl@nginx.com>
parents: 772
diff changeset
1010 <context>server</context>
24b1b0101250 Documented "send_lowat" directive in fastcgi and proxy modules.
Vladimir Homutov <vl@nginx.com>
parents: 772
diff changeset
1011 <context>location</context>
24b1b0101250 Documented "send_lowat" directive in fastcgi and proxy modules.
Vladimir Homutov <vl@nginx.com>
parents: 772
diff changeset
1012
24b1b0101250 Documented "send_lowat" directive in fastcgi and proxy modules.
Vladimir Homutov <vl@nginx.com>
parents: 772
diff changeset
1013 <para>
966
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
1014 If the directive is set to a non-zero value, nginx will try to
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
1015 minimize the number
773
24b1b0101250 Documented "send_lowat" directive in fastcgi and proxy modules.
Vladimir Homutov <vl@nginx.com>
parents: 772
diff changeset
1016 of send operations on outgoing connections to a FastCGI server by using either
24b1b0101250 Documented "send_lowat" directive in fastcgi and proxy modules.
Vladimir Homutov <vl@nginx.com>
parents: 772
diff changeset
1017 <c-def>NOTE_LOWAT</c-def> flag of the
24b1b0101250 Documented "send_lowat" directive in fastcgi and proxy modules.
Vladimir Homutov <vl@nginx.com>
parents: 772
diff changeset
1018 <link doc="../events.xml" id="kqueue"/> method,
24b1b0101250 Documented "send_lowat" directive in fastcgi and proxy modules.
Vladimir Homutov <vl@nginx.com>
parents: 772
diff changeset
1019 or the <c-def>SO_SNDLOWAT</c-def> socket option,
24b1b0101250 Documented "send_lowat" directive in fastcgi and proxy modules.
Vladimir Homutov <vl@nginx.com>
parents: 772
diff changeset
1020 with the specified <value>size</value>.
24b1b0101250 Documented "send_lowat" directive in fastcgi and proxy modules.
Vladimir Homutov <vl@nginx.com>
parents: 772
diff changeset
1021 </para>
24b1b0101250 Documented "send_lowat" directive in fastcgi and proxy modules.
Vladimir Homutov <vl@nginx.com>
parents: 772
diff changeset
1022
24b1b0101250 Documented "send_lowat" directive in fastcgi and proxy modules.
Vladimir Homutov <vl@nginx.com>
parents: 772
diff changeset
1023 <para>
24b1b0101250 Documented "send_lowat" directive in fastcgi and proxy modules.
Vladimir Homutov <vl@nginx.com>
parents: 772
diff changeset
1024 This directive is ignored on Linux, Solaris, and Windows.
24b1b0101250 Documented "send_lowat" directive in fastcgi and proxy modules.
Vladimir Homutov <vl@nginx.com>
parents: 772
diff changeset
1025 </para>
24b1b0101250 Documented "send_lowat" directive in fastcgi and proxy modules.
Vladimir Homutov <vl@nginx.com>
parents: 772
diff changeset
1026
24b1b0101250 Documented "send_lowat" directive in fastcgi and proxy modules.
Vladimir Homutov <vl@nginx.com>
parents: 772
diff changeset
1027 </directive>
24b1b0101250 Documented "send_lowat" directive in fastcgi and proxy modules.
Vladimir Homutov <vl@nginx.com>
parents: 772
diff changeset
1028
24b1b0101250 Documented "send_lowat" directive in fastcgi and proxy modules.
Vladimir Homutov <vl@nginx.com>
parents: 772
diff changeset
1029
298
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1030 <directive name="fastcgi_send_timeout">
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1031 <syntax><value>time</value></syntax>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1032 <default>60s</default>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1033 <context>http</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1034 <context>server</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1035 <context>location</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1036
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1037 <para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1038 Sets a timeout for transmitting a request to the FastCGI server.
966
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
1039 A timeout is set only between two successive write operations,
298
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1040 not for the transmission of the whole request.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1041 If a FastCGI server does not receive anything within this time,
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1042 a connection is closed.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1043 </para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1044
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1045 </directive>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1046
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1047
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1048 <directive name="fastcgi_split_path_info">
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1049 <syntax><value>regex</value></syntax>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1050 <default/>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1051 <context>location</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1052
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1053 <para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1054 Defines a regular expression that captures a value for the
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1055 <var>$fastcgi_path_info</var> variable.
966
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
1056 A regular expression should have two captures: the first becomes
298
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1057 a value of the <var>$fastcgi_script_name</var> variable, the second
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1058 becomes a value of the <var>$fastcgi_path_info</var> variable.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1059 For example, with these settings
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1060 <example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1061 location ~ ^(.+\.php)(.*)$ {
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1062 fastcgi_split_path_info ^(.+\.php)(.*)$;
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1063 fastcgi_param SCRIPT_FILENAME /path/to/php$fastcgi_script_name;
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1064 fastcgi_param PATH_INFO $fastcgi_path_info;
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1065 </example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1066 and the “<literal>/show.php/article/0001</literal>” request,
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1067 the <literal>SCRIPT_FILENAME</literal> parameter will be equal to
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1068 “<literal>/path/to/php/show.php</literal>”, and the
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1069 <literal>PATH_INFO</literal> parameter will be equal to
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1070 “<literal>/article/0001</literal>”.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1071 </para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1072
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1073 </directive>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1074
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1075
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1076 <directive name="fastcgi_store">
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1077 <syntax>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1078 <literal>on</literal> |
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1079 <literal>off</literal> |
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1080 <value>string</value></syntax>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1081 <default>off</default>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1082 <context>http</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1083 <context>server</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1084 <context>location</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1085
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1086 <para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1087 Enables saving of files to a disk.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1088 The <literal>on</literal> parameter saves files with paths
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1089 corresponding to the directives
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1090 <link doc="ngx_http_core_module.xml" id="alias"/> or
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1091 <link doc="ngx_http_core_module.xml" id="root"/>.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1092 The <literal>off</literal> parameter disables saving of files.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1093 In addition, the file name can be set explicitly using the
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1094 <value>string</value> with variables:
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1095 <example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1096 fastcgi_store /data/www$original_uri;
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1097 </example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1098 </para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1099
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1100 <para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1101 The modification time of files is set according to the received
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1102 <header>Last-Modified</header> response header field.
966
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
1103 A response is first written to a temporary file, and then the file is renamed.
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
1104 Starting from version 0.8.9, temporary files and the persistent store
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
1105 can be put on different file systems.
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
1106 However, be aware that in this case a file is copied
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
1107 across two file systems instead of the cheap renaming operation.
298
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1108 It is thus recommended that for any given location both saved files and a
966
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
1109 directory holding temporary files, set by the <link id="fastcgi_temp_path"/>
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
1110 directive, are put on the same file system.
298
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1111 </para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1112
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1113 <para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1114 This directive can be used to create local copies of static unchangeable
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1115 files, e.g.:
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1116 <example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1117 location /images/ {
1005
2275611970dd Removed open_file_cache_errors from proxy_store examples.
Maxim Dounin <mdounin@mdounin.ru>
parents: 995
diff changeset
1118 root /data/www;
2275611970dd Removed open_file_cache_errors from proxy_store examples.
Maxim Dounin <mdounin@mdounin.ru>
parents: 995
diff changeset
1119 error_page 404 = /fetch$uri;
298
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1120 }
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1121
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1122 location /fetch/ {
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1123 internal;
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1124
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1125 fastcgi_pass backend:9000;
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1126 ...
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1127
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1128 fastcgi_store on;
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1129 fastcgi_store_access user:rw group:rw all:r;
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1130 fastcgi_temp_path /data/temp;
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1131
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1132 alias /data/www/;
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1133 }
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1134 </example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1135 </para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1136
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1137 </directive>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1138
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1139
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1140 <directive name="fastcgi_store_access">
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1141 <syntax><value>users</value>:<value>permissions</value> ...</syntax>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1142 <default>user:rw</default>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1143 <context>http</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1144 <context>server</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1145 <context>location</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1146
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1147 <para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1148 Sets access permissions for newly created files and directories, e.g.:
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1149 <example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1150 fastcgi_store_access user:rw group:rw all:r;
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1151 </example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1152 </para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1153
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1154 <para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1155 If any <literal>group</literal> or <literal>all</literal> access permissions
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1156 are specified then <literal>user</literal> permissions may be omitted:
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1157 <example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1158 fastcgi_store_access group:rw all:r;
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1159 </example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1160 </para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1161
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1162 </directive>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1163
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1164
411
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
1165 <directive name="fastcgi_temp_file_write_size">
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
1166 <syntax><value>size</value></syntax>
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
1167 <default>8k|16k</default>
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
1168 <context>http</context>
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
1169 <context>server</context>
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
1170 <context>location</context>
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
1171
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
1172 <para>
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
1173 Limits the <value>size</value> of data written to a temporary file
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
1174 at a time, when buffering of responses from the FastCGI server
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
1175 to temporary files is enabled.
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
1176 By default, <value>size</value> is limited by two buffers set by the
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
1177 <link id="fastcgi_buffer_size"/> and <link id="fastcgi_buffers"/> directives.
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
1178 The maximum size of a temporary file is set by the
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
1179 <link id="fastcgi_max_temp_file_size"/> directive.
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
1180 </para>
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
1181
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
1182 </directive>
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
1183
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
1184
298
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1185 <directive name="fastcgi_temp_path">
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1186 <syntax>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1187 <value>path</value>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1188 [<value>level1</value>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1189 [<value>level2</value>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1190 [<value>level3</value>]]]</syntax>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1191 <default>fastcgi_temp</default>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1192 <context>http</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1193 <context>server</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1194 <context>location</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1195
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1196 <para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1197 Defines a directory for storing temporary files
411
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
1198 with data received from FastCGI servers.
298
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1199 Up to three-level subdirectory hierarchy can be used underneath the specified
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1200 directory.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1201 For example, in the following configuration
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1202 <example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1203 fastcgi_temp_path /spool/nginx/fastcgi_temp 1 2;
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1204 </example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1205 a temporary file might look like this:
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1206 <example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1207 /spool/nginx/fastcgi_temp/<emphasis>7</emphasis>/<emphasis>45</emphasis>/00000123<emphasis>457</emphasis>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1208 </example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1209 </para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1210
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1211 </directive>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1212
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1213 </section>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1214
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1215
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1216 <section id="parameters" name="Parameters Passed to a FastCGI Server">
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1217
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1218 <para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1219 HTTP request header fields are passed to the FastCGI server as parameters.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1220 In applications and scripts running as FastCGI servers,
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1221 these parameters are usually made available as environment variables.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1222 For example, the <header>User-Agent</header> header field is passed as the
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1223 <literal>HTTP_USER_AGENT</literal> parameter.
966
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
1224 In addition to HTTP request header fields, it is possible to pass arbitrary
298
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1225 parameters using the <link id="fastcgi_param"/> directive.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1226 </para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1227
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1228 </section>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1229
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1230
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1231 <section id="variables" name="Embedded Variables">
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1232
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1233 <para>
364
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 351
diff changeset
1234 The <literal>ngx_http_fastcgi_module</literal> module supports embedded
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 351
diff changeset
1235 variables that can be used to set parameters using the
298
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1236 <link id="fastcgi_param"/> directive:
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1237 <list type="tag">
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1238
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1239 <tag-name><var>$fastcgi_script_name</var></tag-name>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1240 <tag-desc>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1241 request URI or, if a URI ends with a slash, request URI with an index file
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1242 name configured by the <link id="fastcgi_index"/> directive appended to it.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1243 This variable can be used to set the
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1244 <literal>SCRIPT_FILENAME</literal> and <literal>PATH_TRANSLATED</literal>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1245 parameters that determine the script name in PHP.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1246 For example, for the “<literal>/info/</literal>” request with the
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1247 following directives
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1248 <example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1249 fastcgi_index index.php;
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1250 fastcgi_param SCRIPT_FILENAME /home/www/scripts/php$fastcgi_script_name;
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1251 </example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1252 the <literal>SCRIPT_FILENAME</literal> parameter will be equal to
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1253 “<literal>/home/www/scripts/php/info/index.php</literal>”.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1254
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1255 <para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1256 When using the <link id="fastcgi_split_path_info"/> directive,
966
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
1257 the <var>$fastcgi_script_name</var> variable equals the value of
298
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1258 the first capture set by the directive.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1259 </para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1260 </tag-desc>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1261
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1262 <tag-name><var>$fastcgi_path_info</var></tag-name>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1263 <tag-desc>the value of the second capture set by the
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1264 <link id="fastcgi_split_path_info"/> directive.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1265 This variable can be used to set the
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1266 <literal>PATH_INFO</literal> parameter.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1267 </tag-desc>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1268
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1269 </list>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1270 </para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1271
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1272 </section>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1273
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1274 </module>