annotate xml/en/docs/stream/ngx_stream_proxy_module.xml @ 2721:7041bddec07d

Documented variables support for certificates in proxy, uwsgi, grpc.
author Yaroslav Zhuravlev <yar@nginx.com>
date Wed, 28 Apr 2021 22:37:48 +0100
parents 6684517c9d19
children 03b49685c056
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1367
f1e14d87d833 Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1 <?xml version="1.0"?>
f1e14d87d833 Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2
f1e14d87d833 Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
3 <!--
f1e14d87d833 Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
4 Copyright (C) Nginx, Inc.
f1e14d87d833 Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
5 -->
f1e14d87d833 Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
6
f1e14d87d833 Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
7 <!DOCTYPE module SYSTEM "../../../../dtd/module.dtd">
f1e14d87d833 Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
8
1405
4569719f4247 Split stream module into stream_core and stream_proxy modules.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1394
diff changeset
9 <module name="Module ngx_stream_proxy_module"
4569719f4247 Split stream module into stream_core and stream_proxy modules.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1394
diff changeset
10 link="/en/docs/stream/ngx_stream_proxy_module.html"
1367
f1e14d87d833 Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
11 lang="en"
2721
7041bddec07d Documented variables support for certificates in proxy, uwsgi, grpc.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2617
diff changeset
12 rev="27">
1367
f1e14d87d833 Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
13
f1e14d87d833 Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
14 <section id="summary">
f1e14d87d833 Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
15
f1e14d87d833 Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
16 <para>
1662
48615cf80e20 Documented the UDP proxy functionality.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1622
diff changeset
17 The <literal>ngx_stream_proxy_module</literal> module (1.9.0) allows proxying
48615cf80e20 Documented the UDP proxy functionality.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1622
diff changeset
18 data streams over TCP, UDP (1.9.13), and UNIX-domain sockets.
1367
f1e14d87d833 Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
19 </para>
f1e14d87d833 Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
20
f1e14d87d833 Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
21 </section>
f1e14d87d833 Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
22
1394
66f227952864 Somewhat revamped the stream module documentation.
Ruslan Ermilov <ru@nginx.com>
parents: 1367
diff changeset
23
1367
f1e14d87d833 Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
24 <section id="example" name="Example Configuration">
f1e14d87d833 Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
25
f1e14d87d833 Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
26 <para>
f1e14d87d833 Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
27 <example>
1405
4569719f4247 Split stream module into stream_core and stream_proxy modules.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1394
diff changeset
28 server {
4569719f4247 Split stream module into stream_core and stream_proxy modules.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1394
diff changeset
29 listen 127.0.0.1:12345;
4569719f4247 Split stream module into stream_core and stream_proxy modules.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1394
diff changeset
30 proxy_pass 127.0.0.1:8080;
4569719f4247 Split stream module into stream_core and stream_proxy modules.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1394
diff changeset
31 }
1367
f1e14d87d833 Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
32
1405
4569719f4247 Split stream module into stream_core and stream_proxy modules.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1394
diff changeset
33 server {
4569719f4247 Split stream module into stream_core and stream_proxy modules.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1394
diff changeset
34 listen 12345;
4569719f4247 Split stream module into stream_core and stream_proxy modules.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1394
diff changeset
35 proxy_connect_timeout 1s;
1526
7b15698cbdb7 Updated the proxy_timeout directive for mail and stream.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1518
diff changeset
36 proxy_timeout 1m;
1405
4569719f4247 Split stream module into stream_core and stream_proxy modules.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1394
diff changeset
37 proxy_pass example.com:12345;
4569719f4247 Split stream module into stream_core and stream_proxy modules.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1394
diff changeset
38 }
4569719f4247 Split stream module into stream_core and stream_proxy modules.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1394
diff changeset
39
4569719f4247 Split stream module into stream_core and stream_proxy modules.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1394
diff changeset
40 server {
2179
962e1adfa032 Documented UDP streams.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2142
diff changeset
41 listen 53 udp reuseport;
1662
48615cf80e20 Documented the UDP proxy functionality.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1622
diff changeset
42 proxy_timeout 20s;
48615cf80e20 Documented the UDP proxy functionality.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1622
diff changeset
43 proxy_pass dns.example.com:53;
48615cf80e20 Documented the UDP proxy functionality.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1622
diff changeset
44 }
48615cf80e20 Documented the UDP proxy functionality.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1622
diff changeset
45
48615cf80e20 Documented the UDP proxy functionality.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1622
diff changeset
46 server {
1405
4569719f4247 Split stream module into stream_core and stream_proxy modules.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1394
diff changeset
47 listen [::1]:12345;
4569719f4247 Split stream module into stream_core and stream_proxy modules.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1394
diff changeset
48 proxy_pass unix:/tmp/stream.socket;
1367
f1e14d87d833 Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
49 }
f1e14d87d833 Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
50 </example>
f1e14d87d833 Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
51 </para>
f1e14d87d833 Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
52
f1e14d87d833 Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
53 </section>
f1e14d87d833 Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
54
f1e14d87d833 Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
55
f1e14d87d833 Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
56 <section id="directives" name="Directives">
f1e14d87d833 Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
57
1510
f90c2ea1729e Documented the "proxy_bind" directive for stream.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1499
diff changeset
58 <directive name="proxy_bind">
1885
6839c258c473 Added <literal> tag to proxy bind transparent.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1758
diff changeset
59 <syntax>
6839c258c473 Added <literal> tag to proxy bind transparent.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1758
diff changeset
60 <value>address</value>
6839c258c473 Added <literal> tag to proxy bind transparent.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1758
diff changeset
61 [<literal>transparent</literal>] |
6839c258c473 Added <literal> tag to proxy bind transparent.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1758
diff changeset
62 <literal>off</literal></syntax>
1510
f90c2ea1729e Documented the "proxy_bind" directive for stream.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1499
diff changeset
63 <default/>
f90c2ea1729e Documented the "proxy_bind" directive for stream.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1499
diff changeset
64 <context>stream</context>
f90c2ea1729e Documented the "proxy_bind" directive for stream.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1499
diff changeset
65 <context>server</context>
f90c2ea1729e Documented the "proxy_bind" directive for stream.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1499
diff changeset
66 <appeared-in>1.9.2</appeared-in>
f90c2ea1729e Documented the "proxy_bind" directive for stream.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1499
diff changeset
67
f90c2ea1729e Documented the "proxy_bind" directive for stream.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1499
diff changeset
68 <para>
f90c2ea1729e Documented the "proxy_bind" directive for stream.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1499
diff changeset
69 Makes outgoing connections to a proxied server originate
f90c2ea1729e Documented the "proxy_bind" directive for stream.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1499
diff changeset
70 from the specified local IP <value>address</value>.
1744
ab56dcd73af2 Added variables to stream hash, limit_conn_zone, proxy_bind.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1717
diff changeset
71 Parameter value can contain variables (1.11.2).
1510
f90c2ea1729e Documented the "proxy_bind" directive for stream.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1499
diff changeset
72 The special value <literal>off</literal> cancels the effect
f90c2ea1729e Documented the "proxy_bind" directive for stream.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1499
diff changeset
73 of the <literal>proxy_bind</literal> directive
f90c2ea1729e Documented the "proxy_bind" directive for stream.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1499
diff changeset
74 inherited from the previous configuration level, which allows the
f90c2ea1729e Documented the "proxy_bind" directive for stream.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1499
diff changeset
75 system to auto-assign the local IP address.
f90c2ea1729e Documented the "proxy_bind" directive for stream.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1499
diff changeset
76 </para>
f90c2ea1729e Documented the "proxy_bind" directive for stream.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1499
diff changeset
77
1696
d855e7cc3b2f Added the "transparent" parameter of proxy_bind and friends.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1662
diff changeset
78 <para id="proxy_bind_transparent">
d855e7cc3b2f Added the "transparent" parameter of proxy_bind and friends.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1662
diff changeset
79 The <literal>transparent</literal> parameter (1.11.0) allows
d855e7cc3b2f Added the "transparent" parameter of proxy_bind and friends.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1662
diff changeset
80 outgoing connections to a proxied server originate
d855e7cc3b2f Added the "transparent" parameter of proxy_bind and friends.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1662
diff changeset
81 from a non-local IP address,
d855e7cc3b2f Added the "transparent" parameter of proxy_bind and friends.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1662
diff changeset
82 for example, from a real IP address of a client:
d855e7cc3b2f Added the "transparent" parameter of proxy_bind and friends.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1662
diff changeset
83 <example>
d855e7cc3b2f Added the "transparent" parameter of proxy_bind and friends.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1662
diff changeset
84 proxy_bind $remote_addr transparent;
d855e7cc3b2f Added the "transparent" parameter of proxy_bind and friends.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1662
diff changeset
85 </example>
d855e7cc3b2f Added the "transparent" parameter of proxy_bind and friends.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1662
diff changeset
86 In order for this parameter to work,
2090
a9a9a052b5bd Documented the "CAP_NET_RAW" capability for transparent proxying.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1978
diff changeset
87 it is usually necessary to run nginx worker processes with the
a9a9a052b5bd Documented the "CAP_NET_RAW" capability for transparent proxying.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1978
diff changeset
88 <link doc="../ngx_core_module.xml" id="user">superuser</link> privileges.
a9a9a052b5bd Documented the "CAP_NET_RAW" capability for transparent proxying.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1978
diff changeset
89 On Linux it is not required (1.13.8) as if
a9a9a052b5bd Documented the "CAP_NET_RAW" capability for transparent proxying.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1978
diff changeset
90 the <literal>transparent</literal> parameter is specified, worker processes
a9a9a052b5bd Documented the "CAP_NET_RAW" capability for transparent proxying.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1978
diff changeset
91 inherit the <literal>CAP_NET_RAW</literal> capability from the master process.
a9a9a052b5bd Documented the "CAP_NET_RAW" capability for transparent proxying.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1978
diff changeset
92 It is also necessary to configure kernel routing table
1696
d855e7cc3b2f Added the "transparent" parameter of proxy_bind and friends.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1662
diff changeset
93 to intercept network traffic from the proxied server.
d855e7cc3b2f Added the "transparent" parameter of proxy_bind and friends.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1662
diff changeset
94 </para>
d855e7cc3b2f Added the "transparent" parameter of proxy_bind and friends.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1662
diff changeset
95
1510
f90c2ea1729e Documented the "proxy_bind" directive for stream.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1499
diff changeset
96 </directive>
f90c2ea1729e Documented the "proxy_bind" directive for stream.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1499
diff changeset
97
f90c2ea1729e Documented the "proxy_bind" directive for stream.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1499
diff changeset
98
1548
08498db38e58 Replaced proxy_downstream/upstream_buffer with proxy_buffer_size.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1535
diff changeset
99 <directive name="proxy_buffer_size">
08498db38e58 Replaced proxy_downstream/upstream_buffer with proxy_buffer_size.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1535
diff changeset
100 <syntax><value>size</value></syntax>
08498db38e58 Replaced proxy_downstream/upstream_buffer with proxy_buffer_size.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1535
diff changeset
101 <default>16k</default>
08498db38e58 Replaced proxy_downstream/upstream_buffer with proxy_buffer_size.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1535
diff changeset
102 <context>stream</context>
08498db38e58 Replaced proxy_downstream/upstream_buffer with proxy_buffer_size.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1535
diff changeset
103 <context>server</context>
08498db38e58 Replaced proxy_downstream/upstream_buffer with proxy_buffer_size.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1535
diff changeset
104 <appeared-in>1.9.4</appeared-in>
08498db38e58 Replaced proxy_downstream/upstream_buffer with proxy_buffer_size.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1535
diff changeset
105
08498db38e58 Replaced proxy_downstream/upstream_buffer with proxy_buffer_size.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1535
diff changeset
106 <para>
08498db38e58 Replaced proxy_downstream/upstream_buffer with proxy_buffer_size.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1535
diff changeset
107 Sets the <value>size</value> of the buffer used for reading data
08498db38e58 Replaced proxy_downstream/upstream_buffer with proxy_buffer_size.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1535
diff changeset
108 from the proxied server.
08498db38e58 Replaced proxy_downstream/upstream_buffer with proxy_buffer_size.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1535
diff changeset
109 Also sets the <value>size</value> of the buffer used for reading data
08498db38e58 Replaced proxy_downstream/upstream_buffer with proxy_buffer_size.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1535
diff changeset
110 from the client.
08498db38e58 Replaced proxy_downstream/upstream_buffer with proxy_buffer_size.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1535
diff changeset
111 </para>
08498db38e58 Replaced proxy_downstream/upstream_buffer with proxy_buffer_size.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1535
diff changeset
112
08498db38e58 Replaced proxy_downstream/upstream_buffer with proxy_buffer_size.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1535
diff changeset
113 </directive>
08498db38e58 Replaced proxy_downstream/upstream_buffer with proxy_buffer_size.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1535
diff changeset
114
08498db38e58 Replaced proxy_downstream/upstream_buffer with proxy_buffer_size.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1535
diff changeset
115
1367
f1e14d87d833 Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
116 <directive name="proxy_connect_timeout">
f1e14d87d833 Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
117 <syntax><value>time</value></syntax>
f1e14d87d833 Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
118 <default>60s</default>
f1e14d87d833 Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
119 <context>stream</context>
f1e14d87d833 Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
120 <context>server</context>
f1e14d87d833 Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
121
f1e14d87d833 Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
122 <para>
f1e14d87d833 Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
123 Defines a timeout for establishing a connection with a proxied server.
f1e14d87d833 Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
124 </para>
f1e14d87d833 Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
125
f1e14d87d833 Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
126 </directive>
f1e14d87d833 Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
127
f1e14d87d833 Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
128
1535
61b1ab5adbc9 Renamed proxy_downstream_limit_rate and proxy_upstream_limit_rate directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1526
diff changeset
129 <directive name="proxy_download_rate">
61b1ab5adbc9 Renamed proxy_downstream_limit_rate and proxy_upstream_limit_rate directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1526
diff changeset
130 <syntax><value>rate</value></syntax>
61b1ab5adbc9 Renamed proxy_downstream_limit_rate and proxy_upstream_limit_rate directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1526
diff changeset
131 <default>0</default>
61b1ab5adbc9 Renamed proxy_downstream_limit_rate and proxy_upstream_limit_rate directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1526
diff changeset
132 <context>stream</context>
61b1ab5adbc9 Renamed proxy_downstream_limit_rate and proxy_upstream_limit_rate directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1526
diff changeset
133 <context>server</context>
61b1ab5adbc9 Renamed proxy_downstream_limit_rate and proxy_upstream_limit_rate directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1526
diff changeset
134 <appeared-in>1.9.3</appeared-in>
61b1ab5adbc9 Renamed proxy_downstream_limit_rate and proxy_upstream_limit_rate directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1526
diff changeset
135
61b1ab5adbc9 Renamed proxy_downstream_limit_rate and proxy_upstream_limit_rate directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1526
diff changeset
136 <para>
61b1ab5adbc9 Renamed proxy_downstream_limit_rate and proxy_upstream_limit_rate directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1526
diff changeset
137 Limits the speed of reading the data from the proxied server.
61b1ab5adbc9 Renamed proxy_downstream_limit_rate and proxy_upstream_limit_rate directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1526
diff changeset
138 The <value>rate</value> is specified in bytes per second.
61b1ab5adbc9 Renamed proxy_downstream_limit_rate and proxy_upstream_limit_rate directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1526
diff changeset
139 The zero value disables rate limiting.
61b1ab5adbc9 Renamed proxy_downstream_limit_rate and proxy_upstream_limit_rate directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1526
diff changeset
140 The limit is set per a connection, so if nginx simultaneously opens
61b1ab5adbc9 Renamed proxy_downstream_limit_rate and proxy_upstream_limit_rate directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1526
diff changeset
141 two connections to the proxied server,
61b1ab5adbc9 Renamed proxy_downstream_limit_rate and proxy_upstream_limit_rate directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1526
diff changeset
142 the overall rate will be twice as much as the specified limit.
61b1ab5adbc9 Renamed proxy_downstream_limit_rate and proxy_upstream_limit_rate directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1526
diff changeset
143 </para>
61b1ab5adbc9 Renamed proxy_downstream_limit_rate and proxy_upstream_limit_rate directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1526
diff changeset
144
2385
e58281e2a93f Documented variables support in proxy_download_rate and proxy_upload_rate.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2359
diff changeset
145 <para>
2391
375a3dfde23b Unified phrase "Parameter value can contain variables".
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2385
diff changeset
146 Parameter value can contain variables (1.17.0).
2385
e58281e2a93f Documented variables support in proxy_download_rate and proxy_upload_rate.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2359
diff changeset
147 It may be useful in cases where rate should be limited
e58281e2a93f Documented variables support in proxy_download_rate and proxy_upload_rate.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2359
diff changeset
148 depending on a certain condition:
e58281e2a93f Documented variables support in proxy_download_rate and proxy_upload_rate.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2359
diff changeset
149 <example>
e58281e2a93f Documented variables support in proxy_download_rate and proxy_upload_rate.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2359
diff changeset
150 map $slow $rate {
e58281e2a93f Documented variables support in proxy_download_rate and proxy_upload_rate.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2359
diff changeset
151 1 4k;
e58281e2a93f Documented variables support in proxy_download_rate and proxy_upload_rate.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2359
diff changeset
152 2 8k;
e58281e2a93f Documented variables support in proxy_download_rate and proxy_upload_rate.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2359
diff changeset
153 }
e58281e2a93f Documented variables support in proxy_download_rate and proxy_upload_rate.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2359
diff changeset
154
e58281e2a93f Documented variables support in proxy_download_rate and proxy_upload_rate.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2359
diff changeset
155 proxy_download_rate $rate;
e58281e2a93f Documented variables support in proxy_download_rate and proxy_upload_rate.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2359
diff changeset
156 </example>
e58281e2a93f Documented variables support in proxy_download_rate and proxy_upload_rate.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2359
diff changeset
157 </para>
e58281e2a93f Documented variables support in proxy_download_rate and proxy_upload_rate.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2359
diff changeset
158
1535
61b1ab5adbc9 Renamed proxy_downstream_limit_rate and proxy_upstream_limit_rate directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1526
diff changeset
159 </directive>
61b1ab5adbc9 Renamed proxy_downstream_limit_rate and proxy_upstream_limit_rate directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1526
diff changeset
160
61b1ab5adbc9 Renamed proxy_downstream_limit_rate and proxy_upstream_limit_rate directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1526
diff changeset
161
1450
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
162 <directive name="proxy_next_upstream">
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
163 <syntax><literal>on</literal> | <literal>off</literal></syntax>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
164 <default>on</default>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
165 <context>stream</context>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
166 <context>server</context>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
167
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
168 <para>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
169 When a connection to the proxied server cannot be established, determines
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
170 whether a client connection will be passed to the next server.
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
171 </para>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
172
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
173 <para>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
174 Passing a connection to the next server can be limited by
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
175 <link id="proxy_next_upstream_tries">the number of tries</link>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
176 and by <link id="proxy_next_upstream_timeout">time</link>.
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
177 </para>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
178
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
179 </directive>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
180
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
181
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
182 <directive name="proxy_next_upstream_timeout">
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
183 <syntax><value>time</value></syntax>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
184 <default>0</default>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
185 <context>stream</context>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
186 <context>server</context>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
187
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
188 <para>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
189 Limits the time allowed to pass a connection to the
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
190 <link id="proxy_next_upstream">next server</link>.
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
191 The <literal>0</literal> value turns off this limitation.
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
192 </para>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
193
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
194 </directive>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
195
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
196
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
197 <directive name="proxy_next_upstream_tries">
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
198 <syntax><value>number</value></syntax>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
199 <default>0</default>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
200 <context>stream</context>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
201 <context>server</context>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
202
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
203 <para>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
204 Limits the number of possible tries for passing a connection to the
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
205 <link id="proxy_next_upstream">next server</link>.
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
206 The <literal>0</literal> value turns off this limitation.
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
207 </para>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
208
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
209 </directive>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
210
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
211
1367
f1e14d87d833 Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
212 <directive name="proxy_pass">
1394
66f227952864 Somewhat revamped the stream module documentation.
Ruslan Ermilov <ru@nginx.com>
parents: 1367
diff changeset
213 <syntax><value>address</value></syntax>
1367
f1e14d87d833 Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
214 <default/>
f1e14d87d833 Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
215 <context>server</context>
f1e14d87d833 Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
216
f1e14d87d833 Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
217 <para>
1394
66f227952864 Somewhat revamped the stream module documentation.
Ruslan Ermilov <ru@nginx.com>
parents: 1367
diff changeset
218 Sets the address of a proxied server.
1367
f1e14d87d833 Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
219 The address can be specified as a domain name or IP address,
1622
c4c1dddfedac Unified *_pass address descriptions.
Ruslan Ermilov <ru@nginx.com>
parents: 1548
diff changeset
220 and a port:
1394
66f227952864 Somewhat revamped the stream module documentation.
Ruslan Ermilov <ru@nginx.com>
parents: 1367
diff changeset
221 <example>
1405
4569719f4247 Split stream module into stream_core and stream_proxy modules.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1394
diff changeset
222 proxy_pass localhost:12345;
1394
66f227952864 Somewhat revamped the stream module documentation.
Ruslan Ermilov <ru@nginx.com>
parents: 1367
diff changeset
223 </example>
66f227952864 Somewhat revamped the stream module documentation.
Ruslan Ermilov <ru@nginx.com>
parents: 1367
diff changeset
224 or as a UNIX-domain socket path:
66f227952864 Somewhat revamped the stream module documentation.
Ruslan Ermilov <ru@nginx.com>
parents: 1367
diff changeset
225 <example>
66f227952864 Somewhat revamped the stream module documentation.
Ruslan Ermilov <ru@nginx.com>
parents: 1367
diff changeset
226 proxy_pass unix:/tmp/stream.socket;
66f227952864 Somewhat revamped the stream module documentation.
Ruslan Ermilov <ru@nginx.com>
parents: 1367
diff changeset
227 </example>
66f227952864 Somewhat revamped the stream module documentation.
Ruslan Ermilov <ru@nginx.com>
parents: 1367
diff changeset
228 </para>
66f227952864 Somewhat revamped the stream module documentation.
Ruslan Ermilov <ru@nginx.com>
parents: 1367
diff changeset
229
66f227952864 Somewhat revamped the stream module documentation.
Ruslan Ermilov <ru@nginx.com>
parents: 1367
diff changeset
230 <para>
1367
f1e14d87d833 Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
231 If a domain name resolves to several addresses, all of them will be
f1e14d87d833 Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
232 used in a round-robin fashion.
1394
66f227952864 Somewhat revamped the stream module documentation.
Ruslan Ermilov <ru@nginx.com>
parents: 1367
diff changeset
233 In addition, an address can be specified as a
66f227952864 Somewhat revamped the stream module documentation.
Ruslan Ermilov <ru@nginx.com>
parents: 1367
diff changeset
234 <link doc="ngx_stream_upstream_module.xml">server group</link>.
1367
f1e14d87d833 Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
235 </para>
f1e14d87d833 Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
236
1758
2e0d07952c8f Documented variables support for proxy_pass in stream.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1744
diff changeset
237 <para>
2e0d07952c8f Documented variables support for proxy_pass in stream.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1744
diff changeset
238 The address can also be specified using variables (1.11.3):
2e0d07952c8f Documented variables support for proxy_pass in stream.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1744
diff changeset
239 <example>
2e0d07952c8f Documented variables support for proxy_pass in stream.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1744
diff changeset
240 proxy_pass $upstream;
2e0d07952c8f Documented variables support for proxy_pass in stream.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1744
diff changeset
241 </example>
2e0d07952c8f Documented variables support for proxy_pass in stream.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1744
diff changeset
242 In this case, the server name is searched among the described
2e0d07952c8f Documented variables support for proxy_pass in stream.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1744
diff changeset
243 <link doc="ngx_stream_upstream_module.xml">server groups</link>,
2e0d07952c8f Documented variables support for proxy_pass in stream.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1744
diff changeset
244 and, if not found, is determined using a
2e0d07952c8f Documented variables support for proxy_pass in stream.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1744
diff changeset
245 <link doc="ngx_stream_core_module.xml" id="resolver"/>.
2e0d07952c8f Documented variables support for proxy_pass in stream.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1744
diff changeset
246 </para>
2e0d07952c8f Documented variables support for proxy_pass in stream.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1744
diff changeset
247
1367
f1e14d87d833 Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
248 </directive>
f1e14d87d833 Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
249
f1e14d87d833 Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
250
1514
eef30c3dc519 Documented the "proxy_protocol" directive for stream.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1510
diff changeset
251 <directive name="proxy_protocol">
eef30c3dc519 Documented the "proxy_protocol" directive for stream.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1510
diff changeset
252 <syntax><literal>on</literal> | <literal>off</literal></syntax>
eef30c3dc519 Documented the "proxy_protocol" directive for stream.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1510
diff changeset
253 <default>off</default>
eef30c3dc519 Documented the "proxy_protocol" directive for stream.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1510
diff changeset
254 <context>stream</context>
eef30c3dc519 Documented the "proxy_protocol" directive for stream.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1510
diff changeset
255 <context>server</context>
eef30c3dc519 Documented the "proxy_protocol" directive for stream.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1510
diff changeset
256 <appeared-in>1.9.2</appeared-in>
eef30c3dc519 Documented the "proxy_protocol" directive for stream.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1510
diff changeset
257
eef30c3dc519 Documented the "proxy_protocol" directive for stream.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1510
diff changeset
258 <para>
eef30c3dc519 Documented the "proxy_protocol" directive for stream.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1510
diff changeset
259 Enables the
eef30c3dc519 Documented the "proxy_protocol" directive for stream.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1510
diff changeset
260 <link url="http://www.haproxy.org/download/1.5/doc/proxy-protocol.txt">PROXY
eef30c3dc519 Documented the "proxy_protocol" directive for stream.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1510
diff changeset
261 protocol</link> for connections to a proxied server.
eef30c3dc519 Documented the "proxy_protocol" directive for stream.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1510
diff changeset
262 </para>
eef30c3dc519 Documented the "proxy_protocol" directive for stream.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1510
diff changeset
263
eef30c3dc519 Documented the "proxy_protocol" directive for stream.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1510
diff changeset
264 </directive>
eef30c3dc519 Documented the "proxy_protocol" directive for stream.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1510
diff changeset
265
eef30c3dc519 Documented the "proxy_protocol" directive for stream.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1510
diff changeset
266
2278
f047bd9403d5 Documented the "proxy_requests" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2254
diff changeset
267 <directive name="proxy_requests">
f047bd9403d5 Documented the "proxy_requests" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2254
diff changeset
268 <syntax><value>number</value></syntax>
f047bd9403d5 Documented the "proxy_requests" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2254
diff changeset
269 <default>0</default>
f047bd9403d5 Documented the "proxy_requests" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2254
diff changeset
270 <context>stream</context>
f047bd9403d5 Documented the "proxy_requests" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2254
diff changeset
271 <context>server</context>
f047bd9403d5 Documented the "proxy_requests" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2254
diff changeset
272 <appeared-in>1.15.7</appeared-in>
f047bd9403d5 Documented the "proxy_requests" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2254
diff changeset
273
f047bd9403d5 Documented the "proxy_requests" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2254
diff changeset
274 <para>
f047bd9403d5 Documented the "proxy_requests" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2254
diff changeset
275 Sets the number of client datagrams at which
f047bd9403d5 Documented the "proxy_requests" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2254
diff changeset
276 binding between a client and existing UDP stream session is dropped.
f047bd9403d5 Documented the "proxy_requests" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2254
diff changeset
277 After receiving the specified number of datagrams, next datagram
f047bd9403d5 Documented the "proxy_requests" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2254
diff changeset
278 from the same client starts a new session.
f047bd9403d5 Documented the "proxy_requests" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2254
diff changeset
279 The session terminates when all client datagrams are transmitted
f047bd9403d5 Documented the "proxy_requests" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2254
diff changeset
280 to a proxied server and the expected number of
f047bd9403d5 Documented the "proxy_requests" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2254
diff changeset
281 <link id="proxy_responses">responses</link> is received,
f047bd9403d5 Documented the "proxy_requests" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2254
diff changeset
282 or when it reaches a <link id="proxy_timeout">timeout</link>.
f047bd9403d5 Documented the "proxy_requests" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2254
diff changeset
283 </para>
f047bd9403d5 Documented the "proxy_requests" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2254
diff changeset
284
f047bd9403d5 Documented the "proxy_requests" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2254
diff changeset
285 </directive>
f047bd9403d5 Documented the "proxy_requests" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2254
diff changeset
286
f047bd9403d5 Documented the "proxy_requests" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2254
diff changeset
287
1662
48615cf80e20 Documented the UDP proxy functionality.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1622
diff changeset
288 <directive name="proxy_responses">
48615cf80e20 Documented the UDP proxy functionality.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1622
diff changeset
289 <syntax><value>number</value></syntax>
48615cf80e20 Documented the UDP proxy functionality.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1622
diff changeset
290 <default/>
48615cf80e20 Documented the UDP proxy functionality.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1622
diff changeset
291 <context>stream</context>
48615cf80e20 Documented the UDP proxy functionality.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1622
diff changeset
292 <context>server</context>
48615cf80e20 Documented the UDP proxy functionality.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1622
diff changeset
293 <appeared-in>1.9.13</appeared-in>
48615cf80e20 Documented the UDP proxy functionality.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1622
diff changeset
294
48615cf80e20 Documented the UDP proxy functionality.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1622
diff changeset
295 <para>
48615cf80e20 Documented the UDP proxy functionality.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1622
diff changeset
296 Sets the number of datagrams expected from the proxied server
2179
962e1adfa032 Documented UDP streams.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2142
diff changeset
297 in response to a client datagram
1662
48615cf80e20 Documented the UDP proxy functionality.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1622
diff changeset
298 if the <link doc="ngx_stream_core_module.xml" id="udp">UDP</link>
48615cf80e20 Documented the UDP proxy functionality.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1622
diff changeset
299 protocol is used.
2179
962e1adfa032 Documented UDP streams.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2142
diff changeset
300 The number serves as a hint for session termination.
962e1adfa032 Documented UDP streams.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2142
diff changeset
301 By default, the number of datagrams is not limited.
1662
48615cf80e20 Documented the UDP proxy functionality.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1622
diff changeset
302 </para>
48615cf80e20 Documented the UDP proxy functionality.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1622
diff changeset
303
2278
f047bd9403d5 Documented the "proxy_requests" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2254
diff changeset
304 <para>
f047bd9403d5 Documented the "proxy_requests" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2254
diff changeset
305 If zero value is specified, no response is expected.
f047bd9403d5 Documented the "proxy_requests" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2254
diff changeset
306 However, if a response is received and the
f047bd9403d5 Documented the "proxy_requests" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2254
diff changeset
307 session is still not finished, the response will be handled.
f047bd9403d5 Documented the "proxy_requests" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2254
diff changeset
308 </para>
f047bd9403d5 Documented the "proxy_requests" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2254
diff changeset
309
1662
48615cf80e20 Documented the UDP proxy functionality.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1622
diff changeset
310 </directive>
48615cf80e20 Documented the UDP proxy functionality.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1622
diff changeset
311
48615cf80e20 Documented the UDP proxy functionality.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1622
diff changeset
312
2359
d5e576eb7677 Updated docs for the upcoming NGINX Plus release.
Ruslan Ermilov <ru@nginx.com>
parents: 2278
diff changeset
313 <directive name="proxy_session_drop">
d5e576eb7677 Updated docs for the upcoming NGINX Plus release.
Ruslan Ermilov <ru@nginx.com>
parents: 2278
diff changeset
314 <syntax><literal>on</literal> | <literal>off</literal></syntax>
d5e576eb7677 Updated docs for the upcoming NGINX Plus release.
Ruslan Ermilov <ru@nginx.com>
parents: 2278
diff changeset
315 <default>off</default>
d5e576eb7677 Updated docs for the upcoming NGINX Plus release.
Ruslan Ermilov <ru@nginx.com>
parents: 2278
diff changeset
316 <context>stream</context>
d5e576eb7677 Updated docs for the upcoming NGINX Plus release.
Ruslan Ermilov <ru@nginx.com>
parents: 2278
diff changeset
317 <context>server</context>
d5e576eb7677 Updated docs for the upcoming NGINX Plus release.
Ruslan Ermilov <ru@nginx.com>
parents: 2278
diff changeset
318 <appeared-in>1.15.8</appeared-in>
d5e576eb7677 Updated docs for the upcoming NGINX Plus release.
Ruslan Ermilov <ru@nginx.com>
parents: 2278
diff changeset
319
d5e576eb7677 Updated docs for the upcoming NGINX Plus release.
Ruslan Ermilov <ru@nginx.com>
parents: 2278
diff changeset
320 <para>
d5e576eb7677 Updated docs for the upcoming NGINX Plus release.
Ruslan Ermilov <ru@nginx.com>
parents: 2278
diff changeset
321 Enables terminating all sessions to a proxied server
d5e576eb7677 Updated docs for the upcoming NGINX Plus release.
Ruslan Ermilov <ru@nginx.com>
parents: 2278
diff changeset
322 after it was removed from the group or marked as permanently unavailable.
d5e576eb7677 Updated docs for the upcoming NGINX Plus release.
Ruslan Ermilov <ru@nginx.com>
parents: 2278
diff changeset
323 This can occur because of
d5e576eb7677 Updated docs for the upcoming NGINX Plus release.
Ruslan Ermilov <ru@nginx.com>
parents: 2278
diff changeset
324 <link doc="ngx_stream_core_module.xml" id="resolver">re-resolve</link>
d5e576eb7677 Updated docs for the upcoming NGINX Plus release.
Ruslan Ermilov <ru@nginx.com>
parents: 2278
diff changeset
325 or with the API
d5e576eb7677 Updated docs for the upcoming NGINX Plus release.
Ruslan Ermilov <ru@nginx.com>
parents: 2278
diff changeset
326 <link doc="../http/ngx_http_api_module.xml" id="deleteStreamUpstreamServer"><literal>DELETE</literal></link>
d5e576eb7677 Updated docs for the upcoming NGINX Plus release.
Ruslan Ermilov <ru@nginx.com>
parents: 2278
diff changeset
327 command.
d5e576eb7677 Updated docs for the upcoming NGINX Plus release.
Ruslan Ermilov <ru@nginx.com>
parents: 2278
diff changeset
328 A server can be marked as permanently unavailable if it is considered
d5e576eb7677 Updated docs for the upcoming NGINX Plus release.
Ruslan Ermilov <ru@nginx.com>
parents: 2278
diff changeset
329 <link doc="ngx_stream_upstream_hc_module.xml" id="health_check">unhealthy</link>
d5e576eb7677 Updated docs for the upcoming NGINX Plus release.
Ruslan Ermilov <ru@nginx.com>
parents: 2278
diff changeset
330 or with the API
d5e576eb7677 Updated docs for the upcoming NGINX Plus release.
Ruslan Ermilov <ru@nginx.com>
parents: 2278
diff changeset
331 <link doc="../http/ngx_http_api_module.xml" id="patchStreamUpstreamServer"><literal>PATCH</literal></link>
d5e576eb7677 Updated docs for the upcoming NGINX Plus release.
Ruslan Ermilov <ru@nginx.com>
parents: 2278
diff changeset
332 command.
d5e576eb7677 Updated docs for the upcoming NGINX Plus release.
Ruslan Ermilov <ru@nginx.com>
parents: 2278
diff changeset
333 Each session is terminated when the next
d5e576eb7677 Updated docs for the upcoming NGINX Plus release.
Ruslan Ermilov <ru@nginx.com>
parents: 2278
diff changeset
334 read or write event is processed for the client or proxied server.
d5e576eb7677 Updated docs for the upcoming NGINX Plus release.
Ruslan Ermilov <ru@nginx.com>
parents: 2278
diff changeset
335 </para>
d5e576eb7677 Updated docs for the upcoming NGINX Plus release.
Ruslan Ermilov <ru@nginx.com>
parents: 2278
diff changeset
336
d5e576eb7677 Updated docs for the upcoming NGINX Plus release.
Ruslan Ermilov <ru@nginx.com>
parents: 2278
diff changeset
337 <para>
d5e576eb7677 Updated docs for the upcoming NGINX Plus release.
Ruslan Ermilov <ru@nginx.com>
parents: 2278
diff changeset
338 <note>
d5e576eb7677 Updated docs for the upcoming NGINX Plus release.
Ruslan Ermilov <ru@nginx.com>
parents: 2278
diff changeset
339 This directive is available as part of our
d5e576eb7677 Updated docs for the upcoming NGINX Plus release.
Ruslan Ermilov <ru@nginx.com>
parents: 2278
diff changeset
340 <commercial_version>commercial subscription</commercial_version>.
d5e576eb7677 Updated docs for the upcoming NGINX Plus release.
Ruslan Ermilov <ru@nginx.com>
parents: 2278
diff changeset
341 </note>
d5e576eb7677 Updated docs for the upcoming NGINX Plus release.
Ruslan Ermilov <ru@nginx.com>
parents: 2278
diff changeset
342 </para>
d5e576eb7677 Updated docs for the upcoming NGINX Plus release.
Ruslan Ermilov <ru@nginx.com>
parents: 2278
diff changeset
343
d5e576eb7677 Updated docs for the upcoming NGINX Plus release.
Ruslan Ermilov <ru@nginx.com>
parents: 2278
diff changeset
344 </directive>
d5e576eb7677 Updated docs for the upcoming NGINX Plus release.
Ruslan Ermilov <ru@nginx.com>
parents: 2278
diff changeset
345
d5e576eb7677 Updated docs for the upcoming NGINX Plus release.
Ruslan Ermilov <ru@nginx.com>
parents: 2278
diff changeset
346
2254
d765ffffd08c Documented proxy_socket_keepalive and friends.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2179
diff changeset
347 <directive name="proxy_socket_keepalive">
d765ffffd08c Documented proxy_socket_keepalive and friends.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2179
diff changeset
348 <syntax><literal>on</literal> | <literal>off</literal></syntax>
d765ffffd08c Documented proxy_socket_keepalive and friends.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2179
diff changeset
349 <default>off</default>
d765ffffd08c Documented proxy_socket_keepalive and friends.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2179
diff changeset
350 <context>stream</context>
d765ffffd08c Documented proxy_socket_keepalive and friends.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2179
diff changeset
351 <context>server</context>
d765ffffd08c Documented proxy_socket_keepalive and friends.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2179
diff changeset
352 <appeared-in>1.15.6</appeared-in>
d765ffffd08c Documented proxy_socket_keepalive and friends.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2179
diff changeset
353
d765ffffd08c Documented proxy_socket_keepalive and friends.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2179
diff changeset
354 <para>
d765ffffd08c Documented proxy_socket_keepalive and friends.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2179
diff changeset
355 Configures the “TCP keepalive” behavior
d765ffffd08c Documented proxy_socket_keepalive and friends.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2179
diff changeset
356 for outgoing connections to a proxied server.
d765ffffd08c Documented proxy_socket_keepalive and friends.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2179
diff changeset
357 By default, the operating system’s settings are in effect for the socket.
d765ffffd08c Documented proxy_socket_keepalive and friends.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2179
diff changeset
358 If the directive is set to the value “<literal>on</literal>”, the
d765ffffd08c Documented proxy_socket_keepalive and friends.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2179
diff changeset
359 <c-def>SO_KEEPALIVE</c-def> socket option is turned on for the socket.
d765ffffd08c Documented proxy_socket_keepalive and friends.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2179
diff changeset
360 </para>
d765ffffd08c Documented proxy_socket_keepalive and friends.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2179
diff changeset
361
d765ffffd08c Documented proxy_socket_keepalive and friends.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2179
diff changeset
362 </directive>
d765ffffd08c Documented proxy_socket_keepalive and friends.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2179
diff changeset
363
d765ffffd08c Documented proxy_socket_keepalive and friends.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2179
diff changeset
364
1450
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
365 <directive name="proxy_ssl">
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
366 <syntax><literal>on</literal> | <literal>off</literal></syntax>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
367 <default>off</default>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
368 <context>stream</context>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
369 <context>server</context>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
370
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
371 <para>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
372 Enables the SSL/TLS protocol for connections to a proxied server.
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
373 </para>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
374
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
375 </directive>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
376
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
377
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
378 <directive name="proxy_ssl_certificate">
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
379 <syntax><value>file</value></syntax>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
380 <default/>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
381 <context>stream</context>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
382 <context>server</context>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
383
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
384 <para>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
385 Specifies a <value>file</value> with the certificate in the PEM format
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
386 used for authentication to a proxied server.
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
387 </para>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
388
2721
7041bddec07d Documented variables support for certificates in proxy, uwsgi, grpc.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2617
diff changeset
389 <para>
7041bddec07d Documented variables support for certificates in proxy, uwsgi, grpc.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2617
diff changeset
390 Since version 1.21.0, variables can be used in the <value>file</value> name.
7041bddec07d Documented variables support for certificates in proxy, uwsgi, grpc.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2617
diff changeset
391 </para>
7041bddec07d Documented variables support for certificates in proxy, uwsgi, grpc.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2617
diff changeset
392
1450
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
393 </directive>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
394
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
395
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
396 <directive name="proxy_ssl_certificate_key">
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
397 <syntax><value>file</value></syntax>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
398 <default/>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
399 <context>stream</context>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
400 <context>server</context>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
401
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
402 <para>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
403 Specifies a <value>file</value> with the secret key in the PEM format
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
404 used for authentication to a proxied server.
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
405 </para>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
406
2721
7041bddec07d Documented variables support for certificates in proxy, uwsgi, grpc.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2617
diff changeset
407 <para>
7041bddec07d Documented variables support for certificates in proxy, uwsgi, grpc.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2617
diff changeset
408 Since version 1.21.0, variables can be used in the <value>file</value> name.
7041bddec07d Documented variables support for certificates in proxy, uwsgi, grpc.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2617
diff changeset
409 </para>
7041bddec07d Documented variables support for certificates in proxy, uwsgi, grpc.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2617
diff changeset
410
1450
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
411 </directive>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
412
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
413
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
414 <directive name="proxy_ssl_ciphers">
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
415 <syntax><value>ciphers</value></syntax>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
416 <default>DEFAULT</default>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
417 <context>stream</context>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
418 <context>server</context>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
419
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
420 <para>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
421 Specifies the enabled ciphers for connections to a proxied server.
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
422 The ciphers are specified in the format understood by the OpenSSL library.
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
423 </para>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
424
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
425 <para>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
426 The full list can be viewed using the
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
427 “<command>openssl ciphers</command>” command.
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
428 </para>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
429
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
430 </directive>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
431
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
432
2617
6684517c9d19 Documented the proxy_ssl_conf_command directive and friends.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2391
diff changeset
433 <directive name="proxy_ssl_conf_command">
6684517c9d19 Documented the proxy_ssl_conf_command directive and friends.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2391
diff changeset
434 <syntax><value>command</value></syntax>
6684517c9d19 Documented the proxy_ssl_conf_command directive and friends.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2391
diff changeset
435 <default/>
6684517c9d19 Documented the proxy_ssl_conf_command directive and friends.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2391
diff changeset
436 <context>stream</context>
6684517c9d19 Documented the proxy_ssl_conf_command directive and friends.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2391
diff changeset
437 <context>server</context>
6684517c9d19 Documented the proxy_ssl_conf_command directive and friends.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2391
diff changeset
438 <appeared-in>1.19.4</appeared-in>
6684517c9d19 Documented the proxy_ssl_conf_command directive and friends.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2391
diff changeset
439
6684517c9d19 Documented the proxy_ssl_conf_command directive and friends.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2391
diff changeset
440 <para>
6684517c9d19 Documented the proxy_ssl_conf_command directive and friends.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2391
diff changeset
441 Sets arbitrary OpenSSL configuration
6684517c9d19 Documented the proxy_ssl_conf_command directive and friends.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2391
diff changeset
442 <link url="https://www.openssl.org/docs/man1.1.1/man3/SSL_CONF_cmd.html">commands</link>
6684517c9d19 Documented the proxy_ssl_conf_command directive and friends.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2391
diff changeset
443 when establishing a connection with the proxied server.
6684517c9d19 Documented the proxy_ssl_conf_command directive and friends.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2391
diff changeset
444 <note>
6684517c9d19 Documented the proxy_ssl_conf_command directive and friends.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2391
diff changeset
445 The directive is supported when using OpenSSL 1.0.2 or higher.
6684517c9d19 Documented the proxy_ssl_conf_command directive and friends.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2391
diff changeset
446 </note>
6684517c9d19 Documented the proxy_ssl_conf_command directive and friends.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2391
diff changeset
447 </para>
6684517c9d19 Documented the proxy_ssl_conf_command directive and friends.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2391
diff changeset
448
6684517c9d19 Documented the proxy_ssl_conf_command directive and friends.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2391
diff changeset
449 <para>
6684517c9d19 Documented the proxy_ssl_conf_command directive and friends.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2391
diff changeset
450 Several <literal>proxy_ssl_conf_command</literal> directives
6684517c9d19 Documented the proxy_ssl_conf_command directive and friends.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2391
diff changeset
451 can be specified on the same level.
6684517c9d19 Documented the proxy_ssl_conf_command directive and friends.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2391
diff changeset
452 These directives are inherited from the previous configuration level
6684517c9d19 Documented the proxy_ssl_conf_command directive and friends.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2391
diff changeset
453 if and only if there are
6684517c9d19 Documented the proxy_ssl_conf_command directive and friends.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2391
diff changeset
454 no <literal>proxy_ssl_conf_command</literal> directives
6684517c9d19 Documented the proxy_ssl_conf_command directive and friends.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2391
diff changeset
455 defined on the current level.
6684517c9d19 Documented the proxy_ssl_conf_command directive and friends.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2391
diff changeset
456 </para>
6684517c9d19 Documented the proxy_ssl_conf_command directive and friends.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2391
diff changeset
457
6684517c9d19 Documented the proxy_ssl_conf_command directive and friends.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2391
diff changeset
458 <para>
6684517c9d19 Documented the proxy_ssl_conf_command directive and friends.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2391
diff changeset
459 <note>
6684517c9d19 Documented the proxy_ssl_conf_command directive and friends.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2391
diff changeset
460 Note that configuring OpenSSL directly
6684517c9d19 Documented the proxy_ssl_conf_command directive and friends.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2391
diff changeset
461 might result in unexpected behavior.
6684517c9d19 Documented the proxy_ssl_conf_command directive and friends.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2391
diff changeset
462 </note>
6684517c9d19 Documented the proxy_ssl_conf_command directive and friends.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2391
diff changeset
463 </para>
6684517c9d19 Documented the proxy_ssl_conf_command directive and friends.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2391
diff changeset
464
6684517c9d19 Documented the proxy_ssl_conf_command directive and friends.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2391
diff changeset
465 </directive>
6684517c9d19 Documented the proxy_ssl_conf_command directive and friends.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2391
diff changeset
466
6684517c9d19 Documented the proxy_ssl_conf_command directive and friends.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2391
diff changeset
467
1450
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
468 <directive name="proxy_ssl_crl">
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
469 <syntax><value>file</value></syntax>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
470 <default/>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
471 <context>stream</context>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
472 <context>server</context>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
473
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
474 <para>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
475 Specifies a <value>file</value> with revoked certificates (CRL)
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
476 in the PEM format used to <link id="proxy_ssl_verify">verify</link>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
477 the certificate of the proxied server.
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
478 </para>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
479
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
480 </directive>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
481
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
482
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
483 <directive name="proxy_ssl_name">
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
484 <syntax><value>name</value></syntax>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
485 <default>host from proxy_pass</default>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
486 <context>stream</context>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
487 <context>server</context>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
488
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
489 <para>
1717
e07ce4ed4dcc Corrected usage of "allow".
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1696
diff changeset
490 Allows overriding the server name used to
1450
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
491 <link id="proxy_ssl_verify">verify</link>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
492 the certificate of the proxied server and to be
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
493 <link id="proxy_ssl_server_name">passed through SNI</link>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
494 when establishing a connection with the proxied server.
1758
2e0d07952c8f Documented variables support for proxy_pass in stream.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1744
diff changeset
495 The server name can also be specified using variables (1.11.3).
1450
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
496 </para>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
497
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
498 <para>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
499 By default, the host part of the <link id="proxy_pass"/> address is used.
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
500 </para>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
501
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
502 </directive>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
503
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
504
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
505 <directive name="proxy_ssl_password_file">
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
506 <syntax><value>file</value></syntax>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
507 <default/>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
508 <context>stream</context>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
509 <context>server</context>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
510
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
511 <para>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
512 Specifies a <value>file</value> with passphrases for
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
513 <link id="proxy_ssl_certificate_key">secret keys</link>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
514 where each passphrase is specified on a separate line.
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
515 Passphrases are tried in turn when loading the key.
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
516 </para>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
517
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
518 </directive>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
519
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
520
2142
ca7568f67dee Sorted directives alphabetically.
Ruslan Ermilov <ru@nginx.com>
parents: 2090
diff changeset
521 <directive name="proxy_ssl_protocols">
ca7568f67dee Sorted directives alphabetically.
Ruslan Ermilov <ru@nginx.com>
parents: 2090
diff changeset
522 <syntax>
ca7568f67dee Sorted directives alphabetically.
Ruslan Ermilov <ru@nginx.com>
parents: 2090
diff changeset
523 [<literal>SSLv2</literal>]
ca7568f67dee Sorted directives alphabetically.
Ruslan Ermilov <ru@nginx.com>
parents: 2090
diff changeset
524 [<literal>SSLv3</literal>]
ca7568f67dee Sorted directives alphabetically.
Ruslan Ermilov <ru@nginx.com>
parents: 2090
diff changeset
525 [<literal>TLSv1</literal>]
ca7568f67dee Sorted directives alphabetically.
Ruslan Ermilov <ru@nginx.com>
parents: 2090
diff changeset
526 [<literal>TLSv1.1</literal>]
ca7568f67dee Sorted directives alphabetically.
Ruslan Ermilov <ru@nginx.com>
parents: 2090
diff changeset
527 [<literal>TLSv1.2</literal>]
ca7568f67dee Sorted directives alphabetically.
Ruslan Ermilov <ru@nginx.com>
parents: 2090
diff changeset
528 [<literal>TLSv1.3</literal>]</syntax>
ca7568f67dee Sorted directives alphabetically.
Ruslan Ermilov <ru@nginx.com>
parents: 2090
diff changeset
529 <default>TLSv1 TLSv1.1 TLSv1.2</default>
ca7568f67dee Sorted directives alphabetically.
Ruslan Ermilov <ru@nginx.com>
parents: 2090
diff changeset
530 <context>stream</context>
ca7568f67dee Sorted directives alphabetically.
Ruslan Ermilov <ru@nginx.com>
parents: 2090
diff changeset
531 <context>server</context>
ca7568f67dee Sorted directives alphabetically.
Ruslan Ermilov <ru@nginx.com>
parents: 2090
diff changeset
532
ca7568f67dee Sorted directives alphabetically.
Ruslan Ermilov <ru@nginx.com>
parents: 2090
diff changeset
533 <para>
ca7568f67dee Sorted directives alphabetically.
Ruslan Ermilov <ru@nginx.com>
parents: 2090
diff changeset
534 Enables the specified protocols for connections to a proxied server.
ca7568f67dee Sorted directives alphabetically.
Ruslan Ermilov <ru@nginx.com>
parents: 2090
diff changeset
535 </para>
ca7568f67dee Sorted directives alphabetically.
Ruslan Ermilov <ru@nginx.com>
parents: 2090
diff changeset
536
ca7568f67dee Sorted directives alphabetically.
Ruslan Ermilov <ru@nginx.com>
parents: 2090
diff changeset
537 </directive>
ca7568f67dee Sorted directives alphabetically.
Ruslan Ermilov <ru@nginx.com>
parents: 2090
diff changeset
538
ca7568f67dee Sorted directives alphabetically.
Ruslan Ermilov <ru@nginx.com>
parents: 2090
diff changeset
539
1450
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
540 <directive name="proxy_ssl_server_name">
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
541 <syntax><literal>on</literal> | <literal>off</literal></syntax>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
542 <default>off</default>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
543 <context>stream</context>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
544 <context>server</context>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
545
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
546 <para>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
547 Enables or disables passing of the server name through
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
548 <link url="http://en.wikipedia.org/wiki/Server_Name_Indication">TLS
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
549 Server Name Indication extension</link> (SNI, RFC 6066)
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
550 when establishing a connection with the proxied server.
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
551 </para>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
552
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
553 </directive>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
554
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
555
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
556 <directive name="proxy_ssl_session_reuse">
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
557 <syntax><literal>on</literal> | <literal>off</literal></syntax>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
558 <default>on</default>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
559 <context>stream</context>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
560 <context>server</context>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
561
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
562 <para>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
563 Determines whether SSL sessions can be reused when working with
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
564 the proxied server.
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
565 If the errors
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
566 “<literal>SSL3_GET_FINISHED:digest check failed</literal>”
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
567 appear in the logs, try disabling session reuse.
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
568 </para>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
569
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
570 </directive>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
571
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
572
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
573 <directive name="proxy_ssl_trusted_certificate">
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
574 <syntax><value>file</value></syntax>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
575 <default/>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
576 <context>stream</context>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
577 <context>server</context>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
578
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
579 <para>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
580 Specifies a <value>file</value> with trusted CA certificates in the PEM format
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
581 used to <link id="proxy_ssl_verify">verify</link>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
582 the certificate of the proxied server.
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
583 </para>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
584
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
585 </directive>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
586
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
587
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
588 <directive name="proxy_ssl_verify">
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
589 <syntax><literal>on</literal> | <literal>off</literal></syntax>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
590 <default>off</default>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
591 <context>stream</context>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
592 <context>server</context>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
593
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
594 <para>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
595 Enables or disables verification of the proxied server certificate.
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
596 </para>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
597
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
598 </directive>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
599
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
600
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
601 <directive name="proxy_ssl_verify_depth">
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
602 <syntax><value>number</value></syntax>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
603 <default>1</default>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
604 <context>stream</context>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
605 <context>server</context>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
606
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
607 <para>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
608 Sets the verification depth in the proxied server certificates chain.
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
609 </para>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
610
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
611 </directive>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
612
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1407
diff changeset
613
1367
f1e14d87d833 Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
614 <directive name="proxy_timeout">
f1e14d87d833 Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
615 <syntax><value>timeout</value></syntax>
f1e14d87d833 Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
616 <default>10m</default>
f1e14d87d833 Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
617 <context>stream</context>
f1e14d87d833 Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
618 <context>server</context>
f1e14d87d833 Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
619
f1e14d87d833 Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
620 <para>
1526
7b15698cbdb7 Updated the proxy_timeout directive for mail and stream.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1518
diff changeset
621 Sets the <value>timeout</value> between two successive
7b15698cbdb7 Updated the proxy_timeout directive for mail and stream.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1518
diff changeset
622 read or write operations on client or proxied server connections.
7b15698cbdb7 Updated the proxy_timeout directive for mail and stream.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1518
diff changeset
623 If no data is transmitted within this time, the connection is closed.
1367
f1e14d87d833 Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
624 </para>
f1e14d87d833 Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
625
f1e14d87d833 Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
626 </directive>
f1e14d87d833 Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
627
f1e14d87d833 Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
628
1535
61b1ab5adbc9 Renamed proxy_downstream_limit_rate and proxy_upstream_limit_rate directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1526
diff changeset
629 <directive name="proxy_upload_rate">
61b1ab5adbc9 Renamed proxy_downstream_limit_rate and proxy_upstream_limit_rate directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1526
diff changeset
630 <syntax><value>rate</value></syntax>
61b1ab5adbc9 Renamed proxy_downstream_limit_rate and proxy_upstream_limit_rate directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1526
diff changeset
631 <default>0</default>
61b1ab5adbc9 Renamed proxy_downstream_limit_rate and proxy_upstream_limit_rate directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1526
diff changeset
632 <context>stream</context>
61b1ab5adbc9 Renamed proxy_downstream_limit_rate and proxy_upstream_limit_rate directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1526
diff changeset
633 <context>server</context>
61b1ab5adbc9 Renamed proxy_downstream_limit_rate and proxy_upstream_limit_rate directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1526
diff changeset
634 <appeared-in>1.9.3</appeared-in>
61b1ab5adbc9 Renamed proxy_downstream_limit_rate and proxy_upstream_limit_rate directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1526
diff changeset
635
61b1ab5adbc9 Renamed proxy_downstream_limit_rate and proxy_upstream_limit_rate directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1526
diff changeset
636 <para>
61b1ab5adbc9 Renamed proxy_downstream_limit_rate and proxy_upstream_limit_rate directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1526
diff changeset
637 Limits the speed of reading the data from the client.
61b1ab5adbc9 Renamed proxy_downstream_limit_rate and proxy_upstream_limit_rate directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1526
diff changeset
638 The <value>rate</value> is specified in bytes per second.
61b1ab5adbc9 Renamed proxy_downstream_limit_rate and proxy_upstream_limit_rate directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1526
diff changeset
639 The zero value disables rate limiting.
61b1ab5adbc9 Renamed proxy_downstream_limit_rate and proxy_upstream_limit_rate directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1526
diff changeset
640 The limit is set per a connection, so if the client simultaneously opens
61b1ab5adbc9 Renamed proxy_downstream_limit_rate and proxy_upstream_limit_rate directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1526
diff changeset
641 two connections,
61b1ab5adbc9 Renamed proxy_downstream_limit_rate and proxy_upstream_limit_rate directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1526
diff changeset
642 the overall rate will be twice as much as the specified limit.
61b1ab5adbc9 Renamed proxy_downstream_limit_rate and proxy_upstream_limit_rate directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1526
diff changeset
643 </para>
61b1ab5adbc9 Renamed proxy_downstream_limit_rate and proxy_upstream_limit_rate directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1526
diff changeset
644
2385
e58281e2a93f Documented variables support in proxy_download_rate and proxy_upload_rate.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2359
diff changeset
645 <para>
2391
375a3dfde23b Unified phrase "Parameter value can contain variables".
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2385
diff changeset
646 Parameter value can contain variables (1.17.0).
2385
e58281e2a93f Documented variables support in proxy_download_rate and proxy_upload_rate.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2359
diff changeset
647 It may be useful in cases where rate should be limited
e58281e2a93f Documented variables support in proxy_download_rate and proxy_upload_rate.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2359
diff changeset
648 depending on a certain condition:
e58281e2a93f Documented variables support in proxy_download_rate and proxy_upload_rate.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2359
diff changeset
649 <example>
e58281e2a93f Documented variables support in proxy_download_rate and proxy_upload_rate.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2359
diff changeset
650 map $slow $rate {
e58281e2a93f Documented variables support in proxy_download_rate and proxy_upload_rate.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2359
diff changeset
651 1 4k;
e58281e2a93f Documented variables support in proxy_download_rate and proxy_upload_rate.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2359
diff changeset
652 2 8k;
e58281e2a93f Documented variables support in proxy_download_rate and proxy_upload_rate.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2359
diff changeset
653 }
e58281e2a93f Documented variables support in proxy_download_rate and proxy_upload_rate.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2359
diff changeset
654
e58281e2a93f Documented variables support in proxy_download_rate and proxy_upload_rate.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2359
diff changeset
655 proxy_upload_rate $rate;
e58281e2a93f Documented variables support in proxy_download_rate and proxy_upload_rate.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2359
diff changeset
656 </example>
e58281e2a93f Documented variables support in proxy_download_rate and proxy_upload_rate.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2359
diff changeset
657 </para>
e58281e2a93f Documented variables support in proxy_download_rate and proxy_upload_rate.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 2359
diff changeset
658
1535
61b1ab5adbc9 Renamed proxy_downstream_limit_rate and proxy_upstream_limit_rate directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1526
diff changeset
659 </directive>
61b1ab5adbc9 Renamed proxy_downstream_limit_rate and proxy_upstream_limit_rate directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1526
diff changeset
660
1367
f1e14d87d833 Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
661 </section>
f1e14d87d833 Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
662
f1e14d87d833 Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
663 </module>