annotate xml/en/docs/http/ngx_http_fastcgi_module.xml @ 583:90a5a62031ad

Added a forgotten link to ngx_http_index_module.
author Ruslan Ermilov <ru@nginx.com>
date Wed, 11 Jul 2012 05:21:53 +0000
parents be54c443235a
children 764fbac1b8b4
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"
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
12 lang="en">
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
13
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
14 <section id="summary">
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
15
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
16 <para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
17 The <literal>ngx_http_fastcgi_module</literal> module allows to pass
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
18 requests to a FastCGI server.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
19 </para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
20
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
21 </section>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
22
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 <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
25
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
26 <para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
27 <example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
28 location / {
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
29 fastcgi_pass localhost:9000;
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
30 fastcgi_index index.php;
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
31
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
32 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
33 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
34 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
35 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
36 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
37 }
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
38 </example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
39 </para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
40
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
41 </section>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
42
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 <section id="directives" name="Directives">
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
45
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
46 <directive name="fastcgi_buffer_size">
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
47 <syntax><value>size</value></syntax>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
48 <default>4k|8k</default>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
49 <context>http</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
50 <context>server</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
51 <context>location</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
52
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
53 <para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
54 Sets <value>size</value> of the buffer used for reading the first part
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
55 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
56 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
57 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
58 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
59 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
60 </para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
61
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
62 </directive>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
63
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
64
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
65 <directive name="fastcgi_buffers">
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
66 <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
67 <default>8 4k|8k</default>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
68 <context>http</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
69 <context>server</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
70 <context>location</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
71
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
72 <para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
73 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
74 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
75 for a single connection.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
76 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
77 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
78 </para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
79
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
80 </directive>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
81
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
82
411
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
83 <directive name="fastcgi_busy_buffers_size">
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
84 <syntax><value>size</value></syntax>
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
85 <default>8k|16k</default>
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
86 <context>http</context>
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
87 <context>server</context>
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
88 <context>location</context>
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
89
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
90 <para>
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
91 Limits the total <value>size</value> of buffers that
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
92 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
93 yet fully read.
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
94 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
95 and, if needed, buffering part of a response to a temporary file.
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
96 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
97 <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
98 </para>
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
99
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
100 </directive>
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
101
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
102
298
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
103 <directive name="fastcgi_cache">
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
104 <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
105 <default>off</default>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
106 <context>http</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
107 <context>server</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
108 <context>location</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
109
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
110 <para>
575
ebcb351d9eb3 Consistently using the term "shared memory zone".
Ruslan Ermilov <ru@nginx.com>
parents: 509
diff changeset
111 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
112 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
113 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
114 from the previous configuration level.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
115 </para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
116
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
117 </directive>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
118
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
119
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
120 <directive name="fastcgi_cache_bypass">
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
121 <syntax><value>string</value> ...</syntax>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
122 <default/>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
123 <context>http</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
124 <context>server</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
125 <context>location</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
126
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
127 <para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
128 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
129 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
130 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
131 <example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
132 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
133 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
134 </example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
135 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
136 </para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
137
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
138 </directive>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
139
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
140
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
141 <directive name="fastcgi_cache_key">
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
142 <syntax><value>string</value></syntax>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
143 <default/>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
144 <context>http</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
145 <context>server</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
146 <context>location</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
147
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
148 <para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
149 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
150 <example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
151 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
152 </example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
153 </para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
154
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
155 </directive>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
156
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
157
302
df728215db07 Documented "proxy_cache_lock", "proxy_cache_lock_timeout",
Ruslan Ermilov <ru@nginx.com>
parents: 298
diff changeset
158 <directive name="fastcgi_cache_lock">
df728215db07 Documented "proxy_cache_lock", "proxy_cache_lock_timeout",
Ruslan Ermilov <ru@nginx.com>
parents: 298
diff changeset
159 <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
160 <default>off</default>
df728215db07 Documented "proxy_cache_lock", "proxy_cache_lock_timeout",
Ruslan Ermilov <ru@nginx.com>
parents: 298
diff changeset
161 <context>http</context>
df728215db07 Documented "proxy_cache_lock", "proxy_cache_lock_timeout",
Ruslan Ermilov <ru@nginx.com>
parents: 298
diff changeset
162 <context>server</context>
df728215db07 Documented "proxy_cache_lock", "proxy_cache_lock_timeout",
Ruslan Ermilov <ru@nginx.com>
parents: 298
diff changeset
163 <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
164 <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
165
df728215db07 Documented "proxy_cache_lock", "proxy_cache_lock_timeout",
Ruslan Ermilov <ru@nginx.com>
parents: 298
diff changeset
166 <para>
df728215db07 Documented "proxy_cache_lock", "proxy_cache_lock_timeout",
Ruslan Ermilov <ru@nginx.com>
parents: 298
diff changeset
167 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
168 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
169 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
170 Other requests of the same cache element will either wait
df728215db07 Documented "proxy_cache_lock", "proxy_cache_lock_timeout",
Ruslan Ermilov <ru@nginx.com>
parents: 298
diff changeset
171 for a response to appear in the cache, or the cache lock for
df728215db07 Documented "proxy_cache_lock", "proxy_cache_lock_timeout",
Ruslan Ermilov <ru@nginx.com>
parents: 298
diff changeset
172 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
173 <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
174 </para>
df728215db07 Documented "proxy_cache_lock", "proxy_cache_lock_timeout",
Ruslan Ermilov <ru@nginx.com>
parents: 298
diff changeset
175
df728215db07 Documented "proxy_cache_lock", "proxy_cache_lock_timeout",
Ruslan Ermilov <ru@nginx.com>
parents: 298
diff changeset
176 </directive>
df728215db07 Documented "proxy_cache_lock", "proxy_cache_lock_timeout",
Ruslan Ermilov <ru@nginx.com>
parents: 298
diff changeset
177
df728215db07 Documented "proxy_cache_lock", "proxy_cache_lock_timeout",
Ruslan Ermilov <ru@nginx.com>
parents: 298
diff changeset
178
df728215db07 Documented "proxy_cache_lock", "proxy_cache_lock_timeout",
Ruslan Ermilov <ru@nginx.com>
parents: 298
diff changeset
179 <directive name="fastcgi_cache_lock_timeout">
df728215db07 Documented "proxy_cache_lock", "proxy_cache_lock_timeout",
Ruslan Ermilov <ru@nginx.com>
parents: 298
diff changeset
180 <syntax><value>time</value></syntax>
df728215db07 Documented "proxy_cache_lock", "proxy_cache_lock_timeout",
Ruslan Ermilov <ru@nginx.com>
parents: 298
diff changeset
181 <default>5s</default>
df728215db07 Documented "proxy_cache_lock", "proxy_cache_lock_timeout",
Ruslan Ermilov <ru@nginx.com>
parents: 298
diff changeset
182 <context>http</context>
df728215db07 Documented "proxy_cache_lock", "proxy_cache_lock_timeout",
Ruslan Ermilov <ru@nginx.com>
parents: 298
diff changeset
183 <context>server</context>
df728215db07 Documented "proxy_cache_lock", "proxy_cache_lock_timeout",
Ruslan Ermilov <ru@nginx.com>
parents: 298
diff changeset
184 <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
185 <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
186
df728215db07 Documented "proxy_cache_lock", "proxy_cache_lock_timeout",
Ruslan Ermilov <ru@nginx.com>
parents: 298
diff changeset
187 <para>
df728215db07 Documented "proxy_cache_lock", "proxy_cache_lock_timeout",
Ruslan Ermilov <ru@nginx.com>
parents: 298
diff changeset
188 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
189 </para>
df728215db07 Documented "proxy_cache_lock", "proxy_cache_lock_timeout",
Ruslan Ermilov <ru@nginx.com>
parents: 298
diff changeset
190
df728215db07 Documented "proxy_cache_lock", "proxy_cache_lock_timeout",
Ruslan Ermilov <ru@nginx.com>
parents: 298
diff changeset
191 </directive>
df728215db07 Documented "proxy_cache_lock", "proxy_cache_lock_timeout",
Ruslan Ermilov <ru@nginx.com>
parents: 298
diff changeset
192
df728215db07 Documented "proxy_cache_lock", "proxy_cache_lock_timeout",
Ruslan Ermilov <ru@nginx.com>
parents: 298
diff changeset
193
298
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
194 <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
195 <syntax><value>number</value></syntax>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
196 <default>1</default>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
197 <context>http</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
198 <context>server</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
199 <context>location</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
200
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 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
203 will be cached.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
204 </para>
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>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
207
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
208
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
209 <directive name="fastcgi_cache_path">
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
210 <syntax>
364
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 351
diff changeset
211 <value>path</value>
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 351
diff changeset
212 [<literal>levels</literal>=<value>levels</value>]
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 351
diff changeset
213 <literal>keys_zone</literal>=<value>name</value>:<value>size</value>
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 351
diff changeset
214 [<literal>inactive</literal>=<value>time</value>]
508
5e332fafd228 Documented "cache loader" and its parameters.
Ruslan Ermilov <ru@nginx.com>
parents: 506
diff changeset
215 [<literal>max_size</literal>=<value>size</value>]
5e332fafd228 Documented "cache loader" and its parameters.
Ruslan Ermilov <ru@nginx.com>
parents: 506
diff changeset
216 [<literal>loader_files</literal>=<value>number</value>]
5e332fafd228 Documented "cache loader" and its parameters.
Ruslan Ermilov <ru@nginx.com>
parents: 506
diff changeset
217 [<literal>loader_sleep</literal>=<value>time</value>]
5e332fafd228 Documented "cache loader" and its parameters.
Ruslan Ermilov <ru@nginx.com>
parents: 506
diff changeset
218 [<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
219 <default/>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
220 <context>http</context>
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 <para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
223 Sets path and other parameters of a cache.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
224 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
225 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
226 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
227
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
228 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
229 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
230 <example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
231 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
232 </example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
233 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
234 <example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
235 /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
236 </example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
237 </para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
238
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
239 <para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
240 A cached response is first written to a temporary file, then a file is renamed.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
241 Starting from version 0.8.9 temporary files and the cache can be put on
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
242 different file systems but be aware that in this case a file is copied
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
243 across two file systems instead of the cheap rename operation.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
244 It is thus recommended that for any given location both cache and a directory
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
245 holding temporary files set by the <link id="fastcgi_temp_path"/> directive
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
246 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
247 </para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
248
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
249 <para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
250 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
251 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
252 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
253 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
254 <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
255 regardless of their freshness.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
256 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
257 </para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
258
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
259 <para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
260 The special process “cache manager” monitors the maximum cache size set
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
261 by the <literal>max_size</literal> parameter;
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
262 when this size is exceeded it removes the least recently used data.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
263 </para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
264
508
5e332fafd228 Documented "cache loader" and its parameters.
Ruslan Ermilov <ru@nginx.com>
parents: 506
diff changeset
265 <para>
5e332fafd228 Documented "cache loader" and its parameters.
Ruslan Ermilov <ru@nginx.com>
parents: 506
diff changeset
266 A minute after the start the special process “cache loader” is activated
5e332fafd228 Documented "cache loader" and its parameters.
Ruslan Ermilov <ru@nginx.com>
parents: 506
diff changeset
267 that loads information about previously cached data stored on file system
5e332fafd228 Documented "cache loader" and its parameters.
Ruslan Ermilov <ru@nginx.com>
parents: 506
diff changeset
268 into a cache zone.
5e332fafd228 Documented "cache loader" and its parameters.
Ruslan Ermilov <ru@nginx.com>
parents: 506
diff changeset
269 A load is done in iterations.
5e332fafd228 Documented "cache loader" and its parameters.
Ruslan Ermilov <ru@nginx.com>
parents: 506
diff changeset
270 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
271 are loaded (by default, 100).
5e332fafd228 Documented "cache loader" and its parameters.
Ruslan Ermilov <ru@nginx.com>
parents: 506
diff changeset
272 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
273 <literal>loader_threshold</literal> parameter (by default, 200 milliseconds).
5e332fafd228 Documented "cache loader" and its parameters.
Ruslan Ermilov <ru@nginx.com>
parents: 506
diff changeset
274 A pause is made between iterations, configured by the
5e332fafd228 Documented "cache loader" and its parameters.
Ruslan Ermilov <ru@nginx.com>
parents: 506
diff changeset
275 <literal>loader_sleep</literal> parameter (by default, 50 milliseconds).
5e332fafd228 Documented "cache loader" and its parameters.
Ruslan Ermilov <ru@nginx.com>
parents: 506
diff changeset
276 </para>
5e332fafd228 Documented "cache loader" and its parameters.
Ruslan Ermilov <ru@nginx.com>
parents: 506
diff changeset
277
298
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
278 </directive>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
279
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
280
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
281 <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
282 <syntax>
364
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 351
diff changeset
283 <literal>error</literal> |
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 351
diff changeset
284 <literal>timeout</literal> |
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 351
diff changeset
285 <literal>invalid_header</literal> |
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 351
diff changeset
286 <literal>updating</literal> |
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 351
diff changeset
287 <literal>http_500</literal> |
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 351
diff changeset
288 <literal>http_503</literal> |
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 351
diff changeset
289 <literal>http_404</literal> |
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 351
diff changeset
290 <literal>off</literal>
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 351
diff changeset
291 ...</syntax>
298
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
292 <default>off</default>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
293 <context>http</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
294 <context>server</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
295 <context>location</context>
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 <para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
298 If an error occurs while working with the FastCGI server it is possible
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
299 to use a stale cached response.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
300 This directives determines in which cases it is permitted.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
301 The directive’s parameters match those of the
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
302 <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
303 </para>
837bcf62b628 Emphasized on what the "updating" parameter of the "fastcgi_cache_use_stale"
Ruslan Ermilov <ru@nginx.com>
parents: 498
diff changeset
304
837bcf62b628 Emphasized on what the "updating" parameter of the "fastcgi_cache_use_stale"
Ruslan Ermilov <ru@nginx.com>
parents: 498
diff changeset
305 <para>
298
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
306 Additionally, the <literal>updating</literal> parameter permits
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
307 to use a stale cached response if it is currently being updated.
505
837bcf62b628 Emphasized on what the "updating" parameter of the "fastcgi_cache_use_stale"
Ruslan Ermilov <ru@nginx.com>
parents: 498
diff changeset
308 This allows to minimize the number of accesses to FastCGI servers
837bcf62b628 Emphasized on what the "updating" parameter of the "fastcgi_cache_use_stale"
Ruslan Ermilov <ru@nginx.com>
parents: 498
diff changeset
309 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
310 </para>
837bcf62b628 Emphasized on what the "updating" parameter of the "fastcgi_cache_use_stale"
Ruslan Ermilov <ru@nginx.com>
parents: 498
diff changeset
311
837bcf62b628 Emphasized on what the "updating" parameter of the "fastcgi_cache_use_stale"
Ruslan Ermilov <ru@nginx.com>
parents: 498
diff changeset
312 <para>
509
0e55c9a48da9 Trimmed space at EOL.
Ruslan Ermilov <ru@nginx.com>
parents: 508
diff changeset
313 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
314 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
315 directive can be used.
298
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
316 </para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
317
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
318 </directive>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
319
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
320
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
321 <directive name="fastcgi_cache_valid">
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
322 <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
323 <default/>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
324 <context>http</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
325 <context>server</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
326 <context>location</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
327
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
328 <para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
329 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
330 For example, the following directives
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
331 <example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
332 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
333 fastcgi_cache_valid 404 1m;
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
334 </example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
335 set 10 minutes of caching for responses with codes 200 and 302,
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
336 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
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 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
341 <example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
342 fastcgi_cache_valid 5m;
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
343 </example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
344 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
345 </para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
346
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 In addition, it can be specified to cache any responses using the
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
349 <literal>any</literal> parameter:
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
350 <example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
351 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
352 fastcgi_cache_valid 301 1h;
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
353 fastcgi_cache_valid any 1m;
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
354 </example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
355 </para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
356
506
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 505
diff changeset
357 <para>
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 505
diff changeset
358 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
359 in the response header.
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 505
diff changeset
360 This has a higher precedence than setting of caching time using the directive.
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 505
diff changeset
361 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
362 response in seconds.
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 505
diff changeset
363 The value 0 disables to cache a response.
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 505
diff changeset
364 If a value starts with the prefix <literal>@</literal>, it sets an absolute
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 505
diff changeset
365 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
366 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
367 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
368 <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
369 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
370 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
371 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
372 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
373 </para>
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 505
diff changeset
374
298
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
375 </directive>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
376
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
377
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
378 <directive name="fastcgi_connect_timeout">
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
379 <syntax><value>time</value></syntax>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
380 <default>60s</default>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
381 <context>http</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
382 <context>server</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
383 <context>location</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
384
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
385 <para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
386 Defines a timeout for establishing a connection with the FastCGI server.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
387 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
388 </para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
389
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
390 </directive>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
391
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
392
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
393 <directive name="fastcgi_hide_header">
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
394 <syntax><value>field</value></syntax>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
395 <default/>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
396 <context>http</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
397 <context>server</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
398 <context>location</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
399
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
400 <para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
401 By default,
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
402 nginx does not pass the header fields <header>Status</header> and
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
403 <header>X-Accel-...</header> from the response of the FastCGI
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
404 server to a client.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
405 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
406 that will not be passed.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
407 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
408 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
409 </para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
410
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
411 </directive>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
412
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
413
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
414 <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
415 <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
416 <default>off</default>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
417 <context>http</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
418 <context>server</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
419 <context>location</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
420
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
421 <para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
422 Determines should the connection with the FastCGI server be
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
423 closed if a client closes a connection without waiting
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
424 for a response.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
425 </para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
426
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
427 </directive>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
428
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
429
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
430 <directive name="fastcgi_ignore_headers">
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
431 <syntax><value>field</value> ...</syntax>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
432 <default/>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
433 <context>http</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
434 <context>server</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
435 <context>location</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
436
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
437 <para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
438 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
439 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
440 <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
441 <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
442 <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
443 <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
444 </para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
445
506
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 505
diff changeset
446 <para>
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 505
diff changeset
447 If not disabled, processing of these header fields has the following effect:
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 505
diff changeset
448 <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
449
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 505
diff changeset
450 <listitem>
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 505
diff changeset
451 <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
452 <header>Cache-Control</header>, and <header>Set-Cookie</header>
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 505
diff changeset
453 set parameters of response <link id="fastcgi_cache_valid">caching</link>;
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 505
diff changeset
454 </listitem>
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 505
diff changeset
455
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 505
diff changeset
456 <listitem>
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 505
diff changeset
457 <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
458 <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
459 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
460 </listitem>
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 505
diff changeset
461
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 505
diff changeset
462 <listitem>
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 505
diff changeset
463 <header>X-Accel-Limit-Rate</header> sets a
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 505
diff changeset
464 <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
465 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
466 </listitem>
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 505
diff changeset
467
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 505
diff changeset
468 <listitem>
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 505
diff changeset
469 <header>X-Accel-Buffering</header> enables or disables
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 505
diff changeset
470 buffering of a response;
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 505
diff changeset
471 </listitem>
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 505
diff changeset
472
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 505
diff changeset
473 <listitem>
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 505
diff changeset
474 <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
475 <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
476 of a response.
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 505
diff changeset
477 </listitem>
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 505
diff changeset
478
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 505
diff changeset
479 </list>
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 505
diff changeset
480 </para>
657848837328 Documented how nginx processes proxied server's response header fields
Ruslan Ermilov <ru@nginx.com>
parents: 505
diff changeset
481
298
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
482 </directive>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
483
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
484
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
485 <directive name="fastcgi_index">
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
486 <syntax><value>name</value></syntax>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
487 <default/>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
488 <context>http</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
489 <context>server</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
490 <context>location</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
491
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
492 <para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
493 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
494 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
495 For example, with these settings
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
496 <example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
497 fastcgi_index index.php;
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
498 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
499 </example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
500 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
501 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
502 “<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
503 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
504 “<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
505 </para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
506
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
507 </directive>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
508
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
509
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
510 <directive name="fastcgi_intercept_errors">
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
511 <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
512 <default>off</default>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
513 <context>http</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
514 <context>server</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
515 <context>location</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
516
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
517 <para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
518 Determines whether FastCGI server responses with codes greater than or equal
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
519 to 400 should be passed to a client or be redirected to nginx for processing
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
520 using the <link doc="ngx_http_core_module.xml" id="error_page"/> directive.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
521 </para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
522
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
523 </directive>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
524
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
525
316
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 310
diff changeset
526 <directive name="fastcgi_keep_conn">
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 310
diff changeset
527 <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
528 <default>off</default>
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 310
diff changeset
529 <context>http</context>
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 310
diff changeset
530 <context>server</context>
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 310
diff changeset
531 <context>location</context>
498
65843513cff5 Documented that "fastcgi_keep_conn" appeared in 1.1.4.
Ruslan Ermilov <ru@nginx.com>
parents: 411
diff changeset
532 <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
533
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 310
diff changeset
534 <para>
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 310
diff changeset
535 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
536 sending the response.
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 310
diff changeset
537 When set to the value <literal>on</literal>, nginx will instruct
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 310
diff changeset
538 a FastCGI server to keep connections open.
364
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 351
diff changeset
539 This in particular is necessary for
316
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 310
diff changeset
540 <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
541 connections to FastCGI servers to function.
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 310
diff changeset
542 </para>
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 310
diff changeset
543
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 310
diff changeset
544 </directive>
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 310
diff changeset
545
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 310
diff changeset
546
411
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
547 <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
548 <syntax><value>size</value></syntax>
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
549 <default>1024m</default>
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
550 <context>http</context>
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
551 <context>server</context>
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
552 <context>location</context>
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
553
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
554 <para>
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
555 When the whole response does not fit into memory buffers
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
556 set by the <link id="fastcgi_buffer_size"/> and <link id="fastcgi_buffers"/>
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
557 directives, part of a response can be saved to a temporary file.
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
558 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
559 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
560 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
561 </para>
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
562
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
563 <para>
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
564 Value of zero disables buffering of responses to temporary files.
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
565 </para>
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
566
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
567 </directive>
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
568
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
569
298
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
570 <directive name="fastcgi_next_upstream">
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
571 <syntax>
364
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 351
diff changeset
572 <literal>error</literal> |
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 351
diff changeset
573 <literal>timeout</literal> |
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 351
diff changeset
574 <literal>invalid_header</literal> |
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 351
diff changeset
575 <literal>http_500</literal> |
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 351
diff changeset
576 <literal>http_503</literal> |
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 351
diff changeset
577 <literal>http_404</literal> |
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 351
diff changeset
578 <literal>off</literal>
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 351
diff changeset
579 ...</syntax>
298
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
580 <default>error timeout</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 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
587 <list type="tag">
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
588
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
589 <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
590 <tag-desc>an error occurred while establishing a connection with the
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
591 server, passing it a request, or reading the response header;</tag-desc>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
592
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
593 <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
594 <tag-desc>a timeout has occurred while establishing a connection with the
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
595 server, passing it a request, or reading the response header;</tag-desc>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
596
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
597 <tag-name><literal>invalid_header</literal></tag-name>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
598 <tag-desc>a server returned empty or invalid response;</tag-desc>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
599
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
600 <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
601 <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
602
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
603 <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
604 <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
605
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
606 <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
607 <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
608
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
609 <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
610 <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
611
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
612 </list>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
613 </para>
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 <para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
616 It should be understood that passing a request to the next server is
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
617 only possible if a client was not sent anything yet.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
618 That is, if an error or a timeout occurs in the middle of
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
619 transferring a response, fixing this is impossible.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
620 </para>
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 </directive>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
623
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
624
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
625 <directive name="fastcgi_no_cache">
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
626 <syntax><value>string</value> ...</syntax>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
627 <default/>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
628 <context>http</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
629 <context>server</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
630 <context>location</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
631
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
632 <para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
633 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
634 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
635 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
636 <example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
637 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
638 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
639 </example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
640 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
641 </para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
642
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
643 </directive>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
644
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
645
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
646 <directive name="fastcgi_param">
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
647 <syntax>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
648 <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
649 [<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
650 <default/>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
651 <context>http</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
652 <context>server</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
653 <context>location</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
654
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
655 <para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
656 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
657 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
658 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
659 only if there are no
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
660 <literal>fastcgi_param</literal>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
661 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
662 </para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
663
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
664 <para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
665 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
666 <example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
667 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
668 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
669 </example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
670 </para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
671
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
672 <para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
673 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
674 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
675 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
676 </para>
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 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
680 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
681 <example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
682 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
683 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
684 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
685 </example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
686 </para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
687
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
688 <para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
689 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
690 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
691 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
692 <example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
693 fastcgi_param REDIRECT_STATUS 200;
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
694 </example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
695 </para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
696
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
697 <para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
698 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
699 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
700 <example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
701 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
702 </example>
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
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
705 </directive>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
706
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
707
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
708 <directive name="fastcgi_pass">
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
709 <syntax><value>address</value></syntax>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
710 <default/>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
711 <context>location</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
712 <context>if in location</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
713
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
714 <para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
715 Sets an address of the FastCGI server.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
716 An address can be specified as a domain name or an address, and a port,
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
717 for example,
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
718 <example>
351
a4fa80755eab Consistently strip initial offset in examples.
Ruslan Ermilov <ru@nginx.com>
parents: 316
diff changeset
719 fastcgi_pass localhost:9000;
298
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
720 </example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
721 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
722 <example>
351
a4fa80755eab Consistently strip initial offset in examples.
Ruslan Ermilov <ru@nginx.com>
parents: 316
diff changeset
723 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
724 </example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
725 </para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
726
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
727 <para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
728 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
729 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
730 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
731 <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
732 </para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
733
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
734 </directive>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
735
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
736
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
737 <directive name="fastcgi_pass_header">
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
738 <syntax><value>field</value></syntax>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
739 <default/>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
740 <context>http</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
741 <context>server</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
742 <context>location</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
743
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
744 <para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
745 Permits to pass <link id="fastcgi_hide_header">otherwise disabled</link> header
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
746 fields from the FastCGI server to a client.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
747 </para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
748
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
749 </directive>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
750
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
751
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
752 <directive name="fastcgi_read_timeout">
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
753 <syntax><value>time</value></syntax>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
754 <default>60s</default>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
755 <context>http</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
756 <context>server</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
757 <context>location</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
758
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
759 <para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
760 Defines a timeout 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
761 A timeout is only set between two successive read operations,
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
762 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
763 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
764 a connection is closed.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
765 </para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
766
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
767 </directive>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
768
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
769
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
770 <directive name="fastcgi_send_timeout">
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
771 <syntax><value>time</value></syntax>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
772 <default>60s</default>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
773 <context>http</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
774 <context>server</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
775 <context>location</context>
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 <para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
778 Sets a timeout for transmitting a request to the FastCGI server.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
779 A timeout is only set between two successive write operations,
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
780 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
781 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
782 a connection is closed.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
783 </para>
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 </directive>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
786
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 <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
789 <syntax><value>regex</value></syntax>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
790 <default/>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
791 <context>location</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
792
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
793 <para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
794 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
795 <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
796 A regular expression should have two captures, the first becomes
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
797 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
798 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
799 For example, with these settings
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
800 <example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
801 location ~ ^(.+\.php)(.*)$ {
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
802 fastcgi_split_path_info ^(.+\.php)(.*)$;
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
803 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
804 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
805 </example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
806 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
807 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
808 “<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
809 <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
810 “<literal>/article/0001</literal>”.
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
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
813 </directive>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
814
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
815
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
816 <directive name="fastcgi_store">
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
817 <syntax>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
818 <literal>on</literal> |
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
819 <literal>off</literal> |
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
820 <value>string</value></syntax>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
821 <default>off</default>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
822 <context>http</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
823 <context>server</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
824 <context>location</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
825
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
826 <para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
827 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
828 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
829 corresponding to the directives
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
830 <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
831 <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
832 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
833 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
834 <value>string</value> with variables:
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
835 <example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
836 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
837 </example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
838 </para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
839
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
840 <para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
841 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
842 <header>Last-Modified</header> response header field.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
843 A response is first written to a temporary file, then a file is renamed.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
844 Starting from version 0.8.9 temporary files and the persistent store
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
845 can be put on different file systems but be aware that in this case
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
846 a file is copied across two file systems instead of the cheap rename operation.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
847 It is thus recommended that for any given location both saved files and a
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
848 directory holding temporary files set by the <link id="fastcgi_temp_path"/>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
849 directive 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
850 </para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
851
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
852 <para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
853 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
854 files, e.g.:
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
855 <example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
856 location /images/ {
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
857 root /data/www;
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
858 open_file_cache_errors off;
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
859 error_page 404 = /fetch$uri;
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
860 }
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
861
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
862 location /fetch/ {
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
863 internal;
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
864
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
865 fastcgi_pass backend:9000;
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
866 ...
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 fastcgi_store on;
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
869 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
870 fastcgi_temp_path /data/temp;
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
871
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
872 alias /data/www/;
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
873 }
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
874 </example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
875 </para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
876
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
877 </directive>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
878
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
879
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
880 <directive name="fastcgi_store_access">
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
881 <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
882 <default>user:rw</default>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
883 <context>http</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
884 <context>server</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
885 <context>location</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
886
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
887 <para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
888 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
889 <example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
890 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
891 </example>
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
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
894 <para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
895 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
896 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
897 <example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
898 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
899 </example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
900 </para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
901
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
902 </directive>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
903
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
904
411
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
905 <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
906 <syntax><value>size</value></syntax>
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
907 <default>8k|16k</default>
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
908 <context>http</context>
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
909 <context>server</context>
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
910 <context>location</context>
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
911
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
912 <para>
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
913 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
914 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
915 to temporary files is enabled.
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
916 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
917 <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
918 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
919 <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
920 </para>
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
921
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
922 </directive>
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
923
f8248d0e3c8f Documented the following directives: fastcgi_busy_buffers_size,
Ruslan Ermilov <ru@nginx.com>
parents: 364
diff changeset
924
298
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
925 <directive name="fastcgi_temp_path">
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
926 <syntax>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
927 <value>path</value>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
928 [<value>level1</value>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
929 [<value>level2</value>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
930 [<value>level3</value>]]]</syntax>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
931 <default>fastcgi_temp</default>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
932 <context>http</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
933 <context>server</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
934 <context>location</context>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
935
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 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
938 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
939 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
940 directory.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
941 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
942 <example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
943 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
944 </example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
945 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
946 <example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
947 /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
948 </example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
949 </para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
950
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
951 </directive>
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 </section>
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 <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
957
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
958 <para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
959 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
960 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
961 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
962 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
963 <literal>HTTP_USER_AGENT</literal> parameter.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
964 In addition to HTTP request header fields it is possible to pass arbitrary
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
965 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
966 </para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
967
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
968 </section>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
969
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 <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
972
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
973 <para>
364
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 351
diff changeset
974 The <literal>ngx_http_fastcgi_module</literal> module supports embedded
bb51d3e17dd0 Style fixed.
Ruslan Ermilov <ru@nginx.com>
parents: 351
diff changeset
975 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
976 <link id="fastcgi_param"/> directive:
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
977 <list type="tag">
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
978
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
979 <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
980 <tag-desc>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
981 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
982 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
983 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
984 <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
985 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
986 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
987 following directives
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
988 <example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
989 fastcgi_index index.php;
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
990 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
991 </example>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
992 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
993 “<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
994
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
995 <para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
996 When using the <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
997 the <var>$fastcgi_script_name</var> variable equals to the value of
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
998 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
999 </para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1000 </tag-desc>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1001
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1002 <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
1003 <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
1004 <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
1005 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
1006 <literal>PATH_INFO</literal> parameter.
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1007 </tag-desc>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1008
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1009 </list>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1010 </para>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1011
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1012 </section>
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1013
0dcf07c393b6 English translation of the ngx_http_fastcgi_module module documentation.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1014 </module>