annotate xml/ru/docs/http/ngx_http_upstream_module.xml @ 1461:4e5cab61e548

Documented status of the zone directive in ngx_http_upstream module.
author Vladimir Homutov <vl@nginx.com>
date Tue, 21 Apr 2015 14:47:19 +0300
parents f5b5eefc43cb
children f29398a167d0
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
222
bfe3eff81d04 Removed redundant encoding specification.
Ruslan Ermilov <ru@nginx.com>
parents: 135
diff changeset
1 <?xml version="1.0"?>
76
4a4caa566120 Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
2
580
be54c443235a Added copyright markers to documentation sources.
Ruslan Ermilov <ru@nginx.com>
parents: 566
diff changeset
3 <!--
be54c443235a Added copyright markers to documentation sources.
Ruslan Ermilov <ru@nginx.com>
parents: 566
diff changeset
4 Copyright (C) Igor Sysoev
be54c443235a Added copyright markers to documentation sources.
Ruslan Ermilov <ru@nginx.com>
parents: 566
diff changeset
5 Copyright (C) Nginx, Inc.
be54c443235a Added copyright markers to documentation sources.
Ruslan Ermilov <ru@nginx.com>
parents: 566
diff changeset
6 -->
be54c443235a Added copyright markers to documentation sources.
Ruslan Ermilov <ru@nginx.com>
parents: 566
diff changeset
7
76
4a4caa566120 Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
8 <!DOCTYPE module SYSTEM "../../../../dtd/module.dtd">
4a4caa566120 Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
9
292
7bc830cc79bb Revision.
Ruslan Ermilov <ru@nginx.com>
parents: 280
diff changeset
10 <module name="Модуль ngx_http_upstream_module"
135
edf8c90f8085 Renamed ngx_http_upstream to ngx_http_upstream_module.
Ruslan Ermilov <ru@nginx.com>
parents: 110
diff changeset
11 link="/ru/docs/http/ngx_http_upstream_module.html"
589
764fbac1b8b4 Added document revision.
Ruslan Ermilov <ru@nginx.com>
parents: 580
diff changeset
12 lang="ru"
1461
4e5cab61e548 Documented status of the zone directive in ngx_http_upstream module.
Vladimir Homutov <vl@nginx.com>
parents: 1450
diff changeset
13 rev="37">
76
4a4caa566120 Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
14
110
40eec261c2a6 Added proper support for anonymous sections, notably for the summary.
Ruslan Ermilov <ru@nginx.com>
parents: 108
diff changeset
15 <section id="summary">
76
4a4caa566120 Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
16
4a4caa566120 Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
17 <para>
292
7bc830cc79bb Revision.
Ruslan Ermilov <ru@nginx.com>
parents: 280
diff changeset
18 Модуль <literal>ngx_http_upstream_module</literal>
7bc830cc79bb Revision.
Ruslan Ermilov <ru@nginx.com>
parents: 280
diff changeset
19 позволяет описывать группы серверов,
76
4a4caa566120 Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
20 которые могут использоваться в директивах
533
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
21 <link doc="ngx_http_proxy_module.xml" id="proxy_pass"/>,
1181
b8f0362f61e5 Added links to scgi.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1155
diff changeset
22 <link doc="ngx_http_fastcgi_module.xml" id="fastcgi_pass"/>,
1194
9264fdb6c833 Added links to uwsgi.
Ruslan Ermilov <ru@nginx.com>
parents: 1186
diff changeset
23 <link doc="ngx_http_uwsgi_module.xml" id="uwsgi_pass"/>,
1181
b8f0362f61e5 Added links to scgi.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1155
diff changeset
24 <link doc="ngx_http_scgi_module.xml" id="scgi_pass"/> и
533
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
25 <link doc="ngx_http_memcached_module.xml" id="memcached_pass"/>.
76
4a4caa566120 Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
26 </para>
4a4caa566120 Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
27
4a4caa566120 Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
28 </section>
4a4caa566120 Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
29
4a4caa566120 Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
30
292
7bc830cc79bb Revision.
Ruslan Ermilov <ru@nginx.com>
parents: 280
diff changeset
31 <section id="example" name="Пример конфигурации">
76
4a4caa566120 Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
32
4a4caa566120 Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
33 <para>
4a4caa566120 Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
34 <example>
292
7bc830cc79bb Revision.
Ruslan Ermilov <ru@nginx.com>
parents: 280
diff changeset
35 upstream <emphasis>backend</emphasis> {
7bc830cc79bb Revision.
Ruslan Ermilov <ru@nginx.com>
parents: 280
diff changeset
36 server backend1.example.com weight=5;
7bc830cc79bb Revision.
Ruslan Ermilov <ru@nginx.com>
parents: 280
diff changeset
37 server backend2.example.com:8080;
7bc830cc79bb Revision.
Ruslan Ermilov <ru@nginx.com>
parents: 280
diff changeset
38 server unix:/tmp/backend3;
76
4a4caa566120 Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
39
292
7bc830cc79bb Revision.
Ruslan Ermilov <ru@nginx.com>
parents: 280
diff changeset
40 server backup1.example.com:8080 backup;
7bc830cc79bb Revision.
Ruslan Ermilov <ru@nginx.com>
parents: 280
diff changeset
41 server backup2.example.com:8080 backup;
76
4a4caa566120 Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
42 }
4a4caa566120 Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
43
4a4caa566120 Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
44 server {
4a4caa566120 Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
45 location / {
292
7bc830cc79bb Revision.
Ruslan Ermilov <ru@nginx.com>
parents: 280
diff changeset
46 proxy_pass http://<emphasis>backend</emphasis>;
76
4a4caa566120 Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
47 }
4a4caa566120 Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
48 }
4a4caa566120 Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
49 </example>
4a4caa566120 Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
50 </para>
4a4caa566120 Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
51
1242
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
52 <para>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
53 Динамически настраиваемая группа,
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
54 доступна как часть
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
55 <commercial_version>коммерческой подписки</commercial_version>:
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
56 <example>
1450
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1418
diff changeset
57 resolver 10.0.0.1;
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1418
diff changeset
58
1259
954dcc02cb63 Upstream: "session learn" sticky method and upstream_conf changes.
Ruslan Ermilov <ru@nginx.com>
parents: 1243
diff changeset
59 upstream <emphasis>dynamic</emphasis> {
954dcc02cb63 Upstream: "session learn" sticky method and upstream_conf changes.
Ruslan Ermilov <ru@nginx.com>
parents: 1243
diff changeset
60 zone upstream_dynamic 64k;
1242
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
61
1259
954dcc02cb63 Upstream: "session learn" sticky method and upstream_conf changes.
Ruslan Ermilov <ru@nginx.com>
parents: 1243
diff changeset
62 server backend1.example.com weight=5;
954dcc02cb63 Upstream: "session learn" sticky method and upstream_conf changes.
Ruslan Ermilov <ru@nginx.com>
parents: 1243
diff changeset
63 server backend2.example.com:8080 fail_timeout=5s slow_start=30s;
1242
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
64 server 192.0.2.1 max_fails=3;
1450
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1418
diff changeset
65 server backend3.example.com resolve;
1242
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
66
1259
954dcc02cb63 Upstream: "session learn" sticky method and upstream_conf changes.
Ruslan Ermilov <ru@nginx.com>
parents: 1243
diff changeset
67 server backup1.example.com:8080 backup;
954dcc02cb63 Upstream: "session learn" sticky method and upstream_conf changes.
Ruslan Ermilov <ru@nginx.com>
parents: 1243
diff changeset
68 server backup2.example.com:8080 backup;
1242
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
69 }
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
70
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
71 server {
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
72 location / {
1259
954dcc02cb63 Upstream: "session learn" sticky method and upstream_conf changes.
Ruslan Ermilov <ru@nginx.com>
parents: 1243
diff changeset
73 proxy_pass http://<emphasis>dynamic</emphasis>;
1242
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
74 health_check;
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
75 }
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
76 }
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
77 </example>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
78 </para>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
79
76
4a4caa566120 Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
80 </section>
4a4caa566120 Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
81
4a4caa566120 Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
82
292
7bc830cc79bb Revision.
Ruslan Ermilov <ru@nginx.com>
parents: 280
diff changeset
83 <section id="directives" name="Директивы">
76
4a4caa566120 Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
84
533
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
85 <directive name="upstream">
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
86 <syntax block="yes"><value>название</value></syntax>
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
87 <default/>
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
88 <context>http</context>
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
89
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
90 <para>
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
91 Описывает группу серверов.
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
92 Серверы могут слушать на разных портах.
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
93 Кроме того, можно одновременно использовать серверы,
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
94 слушающие на TCP- и UNIX-сокетах.
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
95 </para>
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
96
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
97 <para>
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
98 Пример:
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
99 <example>
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
100 upstream backend {
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
101 server backend1.example.com weight=5;
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
102 server 127.0.0.1:8080 max_fails=3 fail_timeout=30s;
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
103 server unix:/tmp/backend3;
1126
2e28d1c4a0a2 Upstream: revised layout of the "server" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 1125
diff changeset
104
2e28d1c4a0a2 Upstream: revised layout of the "server" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 1125
diff changeset
105 server backup1.example.com backup;
533
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
106 }
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
107 </example>
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
108 </para>
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
109
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
110 <para>
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
111 По умолчанию запросы распределяются по серверам циклически
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
112 (в режиме round-robin) с учётом весов серверов.
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
113 В вышеприведённом примере каждые 7 запросов будут распределены так:
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
114 5 запросов на <literal>backend1.example.com</literal>
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
115 и по одному запросу на второй и третий серверы.
966
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
116 Если при попытке работы с сервером происходит ошибка, то запрос
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
117 передаётся следующему серверу, и так далее до тех пор, пока не будут опробованы
533
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
118 все работающие серверы.
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
119 Если не удастся получить успешный ответ
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
120 ни от одного из серверов, то клиенту будет возвращён результат работы
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
121 с последним сервером.
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
122 </para>
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
123
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
124 </directive>
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
125
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
126
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
127 <directive name="server">
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
128 <syntax><value>адрес</value> [<value>параметры</value>]</syntax>
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
129 <default/>
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
130 <context>upstream</context>
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
131
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
132 <para>
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
133 Задаёт <value>адрес</value> и другие <value>параметры</value>
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
134 сервера.
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
135 Адрес может быть указан в виде доменного имени или IP-адреса,
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
136 и необязательного порта, или в виде пути UNIX-сокета, который
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
137 указывается после префикса “<literal>unix:</literal>”.
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
138 Если порт не указан, используется порт 80.
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
139 Доменное имя, которому соответствует несколько IP-адресов,
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
140 задаёт сразу несколько серверов.
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
141 </para>
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
142
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
143 <para>
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
144 Могут быть заданы следующие параметры:
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
145 <list type="tag">
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
146
1241
2246339a6a93 Upstream: added IDs for "server" and "health_check" params.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1240
diff changeset
147 <tag-name id="weight">
2246339a6a93 Upstream: added IDs for "server" and "health_check" params.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1240
diff changeset
148 <literal>weight</literal>=<value>число</value>
2246339a6a93 Upstream: added IDs for "server" and "health_check" params.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1240
diff changeset
149 </tag-name>
533
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
150 <tag-desc>
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
151 задаёт вес сервера, по умолчанию 1.
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
152 </tag-desc>
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
153
1241
2246339a6a93 Upstream: added IDs for "server" and "health_check" params.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1240
diff changeset
154 <tag-name id="max_fails">
2246339a6a93 Upstream: added IDs for "server" and "health_check" params.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1240
diff changeset
155 <literal>max_fails</literal>=<value>число</value>
2246339a6a93 Upstream: added IDs for "server" and "health_check" params.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1240
diff changeset
156 </tag-name>
533
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
157 <tag-desc>
966
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
158 задаёт число неудачных попыток работы с сервером, которые должны произойти
1240
019f8273ee24 Upstream: translated the missing parts of the "server" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1238
diff changeset
159 в течение времени, заданного параметром <literal>fail_timeout</literal>,
019f8273ee24 Upstream: translated the missing parts of the "server" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1238
diff changeset
160 чтобы сервер считался недоступным на период времени, также заданный
966
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
161 параметром <literal>fail_timeout</literal>.
533
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
162 По умолчанию число попыток устанавливается равным 1.
966
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
163 Нулевое значение отключает учёт попыток.
942
ba3d6ade3513 Elaborate on upstream server failures.
Ruslan Ermilov <ru@nginx.com>
parents: 917
diff changeset
164 Что считается неудачной попыткой, определяется директивами
533
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
165 <link doc="ngx_http_proxy_module.xml" id="proxy_next_upstream"/>,
1181
b8f0362f61e5 Added links to scgi.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1155
diff changeset
166 <link doc="ngx_http_fastcgi_module.xml" id="fastcgi_next_upstream"/>,
1194
9264fdb6c833 Added links to uwsgi.
Ruslan Ermilov <ru@nginx.com>
parents: 1186
diff changeset
167 <link doc="ngx_http_uwsgi_module.xml" id="uwsgi_next_upstream"/>,
1181
b8f0362f61e5 Added links to scgi.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1155
diff changeset
168 <link doc="ngx_http_scgi_module.xml" id="scgi_next_upstream"/> и
533
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
169 <link doc="ngx_http_memcached_module.xml" id="memcached_next_upstream"/>.
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
170 </tag-desc>
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
171
1241
2246339a6a93 Upstream: added IDs for "server" and "health_check" params.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1240
diff changeset
172 <tag-name id="fail_timeout">
2246339a6a93 Upstream: added IDs for "server" and "health_check" params.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1240
diff changeset
173 <literal>fail_timeout</literal>=<value>время</value>
2246339a6a93 Upstream: added IDs for "server" and "health_check" params.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1240
diff changeset
174 </tag-name>
533
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
175 <tag-desc>
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
176 задаёт
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
177 <list type="bullet">
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
178
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
179 <listitem>
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
180 время, в течение которого должно произойти заданное число неудачных
1240
019f8273ee24 Upstream: translated the missing parts of the "server" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1238
diff changeset
181 попыток работы с сервером для того, чтобы сервер считался недоступным;
533
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
182 </listitem>
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
183
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
184 <listitem>
1240
019f8273ee24 Upstream: translated the missing parts of the "server" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1238
diff changeset
185 и время, в течение которого сервер будет считаться недоступным.
533
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
186 </listitem>
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
187
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
188 </list>
966
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
189 По умолчанию параметр равен 10 секундам.
533
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
190 </tag-desc>
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
191
1241
2246339a6a93 Upstream: added IDs for "server" and "health_check" params.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1240
diff changeset
192 <tag-name id="backup">
2246339a6a93 Upstream: added IDs for "server" and "health_check" params.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1240
diff changeset
193 <literal>backup</literal>
2246339a6a93 Upstream: added IDs for "server" and "health_check" params.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1240
diff changeset
194 </tag-name>
533
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
195 <tag-desc>
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
196 помечает сервер как запасной сервер.
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
197 На него будут передаваться запросы в случае, если не работают основные серверы.
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
198 </tag-desc>
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
199
1241
2246339a6a93 Upstream: added IDs for "server" and "health_check" params.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1240
diff changeset
200 <tag-name id="down">
2246339a6a93 Upstream: added IDs for "server" and "health_check" params.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1240
diff changeset
201 <literal>down</literal>
2246339a6a93 Upstream: added IDs for "server" and "health_check" params.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1240
diff changeset
202 </tag-name>
533
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
203 <tag-desc>
1410
f5dcc23b214f Deleted info about hash and ip_hash from the down parameter.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1393
diff changeset
204 помечает сервер как постоянно недоступный.
533
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
205 </tag-desc>
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
206
1126
2e28d1c4a0a2 Upstream: revised layout of the "server" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 1125
diff changeset
207 </list>
2e28d1c4a0a2 Upstream: revised layout of the "server" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 1125
diff changeset
208 </para>
2e28d1c4a0a2 Upstream: revised layout of the "server" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 1125
diff changeset
209
2e28d1c4a0a2 Upstream: revised layout of the "server" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 1125
diff changeset
210 <para>
2e28d1c4a0a2 Upstream: revised layout of the "server" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 1125
diff changeset
211 Кроме того,
1128
1594ed379f1f De-i18n'ed <commercial_version/>.
Ruslan Ermilov <ru@nginx.com>
parents: 1127
diff changeset
212 следующие параметры доступны как часть
1594ed379f1f De-i18n'ed <commercial_version/>.
Ruslan Ermilov <ru@nginx.com>
parents: 1127
diff changeset
213 <commercial_version>коммерческой подписки</commercial_version>:
1126
2e28d1c4a0a2 Upstream: revised layout of the "server" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 1125
diff changeset
214 <list type="tag">
2e28d1c4a0a2 Upstream: revised layout of the "server" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 1125
diff changeset
215
2e28d1c4a0a2 Upstream: revised layout of the "server" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 1125
diff changeset
216 <tag-name id="max_conns">
2e28d1c4a0a2 Upstream: revised layout of the "server" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 1125
diff changeset
217 <literal>max_conns</literal>=<value>число</value>
2e28d1c4a0a2 Upstream: revised layout of the "server" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 1125
diff changeset
218 </tag-name>
2e28d1c4a0a2 Upstream: revised layout of the "server" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 1125
diff changeset
219 <tag-desc>
2e28d1c4a0a2 Upstream: revised layout of the "server" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 1125
diff changeset
220 ограничивает максимальное <value>число</value> одновременных соединений
2e28d1c4a0a2 Upstream: revised layout of the "server" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 1125
diff changeset
221 к проксируемому серверу (1.5.9).
2e28d1c4a0a2 Upstream: revised layout of the "server" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 1125
diff changeset
222 Значение по умолчанию равно 0 и означает, что ограничения нет.
2e28d1c4a0a2 Upstream: revised layout of the "server" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 1125
diff changeset
223 </tag-desc>
2e28d1c4a0a2 Upstream: revised layout of the "server" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 1125
diff changeset
224
1124
d790333947f4 Upstream: the "resolve" parameter of the "server" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1123
diff changeset
225 <tag-name id="resolve">
d790333947f4 Upstream: the "resolve" parameter of the "server" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1123
diff changeset
226 <literal>resolve</literal>
d790333947f4 Upstream: the "resolve" parameter of the "server" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1123
diff changeset
227 </tag-name>
d790333947f4 Upstream: the "resolve" parameter of the "server" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1123
diff changeset
228 <tag-desc>
d790333947f4 Upstream: the "resolve" parameter of the "server" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1123
diff changeset
229 отслеживает изменения IP-адресов, соответствующих доменному имени сервера,
d790333947f4 Upstream: the "resolve" parameter of the "server" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1123
diff changeset
230 и автоматически изменяет конфигурацию группы
1127
948c853f5d22 Upstream: improved "server resolve".
Ruslan Ermilov <ru@nginx.com>
parents: 1126
diff changeset
231 без необходимости перезапуска nginx (1.5.12).
1124
d790333947f4 Upstream: the "resolve" parameter of the "server" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1123
diff changeset
232 <para>
d790333947f4 Upstream: the "resolve" parameter of the "server" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1123
diff changeset
233 Для работы этого параметра
d790333947f4 Upstream: the "resolve" parameter of the "server" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1123
diff changeset
234 директива <link doc="ngx_http_core_module.xml" id="resolver"/>
d790333947f4 Upstream: the "resolve" parameter of the "server" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1123
diff changeset
235 должна быть задана в блоке
d790333947f4 Upstream: the "resolve" parameter of the "server" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1123
diff changeset
236 <link doc="ngx_http_core_module.xml" id="http"/>.
1127
948c853f5d22 Upstream: improved "server resolve".
Ruslan Ermilov <ru@nginx.com>
parents: 1126
diff changeset
237 Пример:
1124
d790333947f4 Upstream: the "resolve" parameter of the "server" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1123
diff changeset
238 <example>
d790333947f4 Upstream: the "resolve" parameter of the "server" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1123
diff changeset
239 http {
d790333947f4 Upstream: the "resolve" parameter of the "server" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1123
diff changeset
240 resolver 10.0.0.1;
d790333947f4 Upstream: the "resolve" parameter of the "server" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1123
diff changeset
241
d790333947f4 Upstream: the "resolve" parameter of the "server" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1123
diff changeset
242 upstream u {
d790333947f4 Upstream: the "resolve" parameter of the "server" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1123
diff changeset
243 zone ...;
d790333947f4 Upstream: the "resolve" parameter of the "server" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1123
diff changeset
244 ...
d790333947f4 Upstream: the "resolve" parameter of the "server" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1123
diff changeset
245 server example.com resolve;
d790333947f4 Upstream: the "resolve" parameter of the "server" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1123
diff changeset
246 }
d790333947f4 Upstream: the "resolve" parameter of the "server" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1123
diff changeset
247 }
d790333947f4 Upstream: the "resolve" parameter of the "server" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1123
diff changeset
248 </example>
d790333947f4 Upstream: the "resolve" parameter of the "server" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1123
diff changeset
249 </para>
d790333947f4 Upstream: the "resolve" parameter of the "server" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1123
diff changeset
250 </tag-desc>
d790333947f4 Upstream: the "resolve" parameter of the "server" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1123
diff changeset
251
1241
2246339a6a93 Upstream: added IDs for "server" and "health_check" params.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1240
diff changeset
252 <tag-name id="route">
2246339a6a93 Upstream: added IDs for "server" and "health_check" params.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1240
diff changeset
253 <literal>route</literal>=<value>строка</value>
2246339a6a93 Upstream: added IDs for "server" and "health_check" params.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1240
diff changeset
254 </tag-name>
1240
019f8273ee24 Upstream: translated the missing parts of the "server" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1238
diff changeset
255 <tag-desc>
019f8273ee24 Upstream: translated the missing parts of the "server" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1238
diff changeset
256 задаёт имя маршрута к серверу.
019f8273ee24 Upstream: translated the missing parts of the "server" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1238
diff changeset
257 </tag-desc>
019f8273ee24 Upstream: translated the missing parts of the "server" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1238
diff changeset
258
1241
2246339a6a93 Upstream: added IDs for "server" and "health_check" params.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1240
diff changeset
259 <tag-name id="slow_start">
2246339a6a93 Upstream: added IDs for "server" and "health_check" params.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1240
diff changeset
260 <literal>slow_start</literal>=<value>время</value>
2246339a6a93 Upstream: added IDs for "server" and "health_check" params.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1240
diff changeset
261 </tag-name>
1240
019f8273ee24 Upstream: translated the missing parts of the "server" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1238
diff changeset
262 <tag-desc>
019f8273ee24 Upstream: translated the missing parts of the "server" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1238
diff changeset
263 задаёт <value>время</value>, в течение которого вес сервера
019f8273ee24 Upstream: translated the missing parts of the "server" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1238
diff changeset
264 восстановится от нуля до своего номинального значения в ситуации, когда
019f8273ee24 Upstream: translated the missing parts of the "server" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1238
diff changeset
265 неработоспособный (unhealthy) сервер вновь становится работоспособным
019f8273ee24 Upstream: translated the missing parts of the "server" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1238
diff changeset
266 (<link id="health_check">healthy</link>)
019f8273ee24 Upstream: translated the missing parts of the "server" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1238
diff changeset
267 или когда сервер становится доступным по прошествии времени,
1241
2246339a6a93 Upstream: added IDs for "server" and "health_check" params.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1240
diff changeset
268 в течение которого он считался <link id="fail_timeout">недоступным</link>.
1240
019f8273ee24 Upstream: translated the missing parts of the "server" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1238
diff changeset
269 Значение по умолчанию равно нулю и означает, что медленный старт выключен.
019f8273ee24 Upstream: translated the missing parts of the "server" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1238
diff changeset
270 </tag-desc>
019f8273ee24 Upstream: translated the missing parts of the "server" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1238
diff changeset
271
533
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
272 </list>
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
273 </para>
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
274
1240
019f8273ee24 Upstream: translated the missing parts of the "server" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1238
diff changeset
275 <para>
019f8273ee24 Upstream: translated the missing parts of the "server" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1238
diff changeset
276 <note>
019f8273ee24 Upstream: translated the missing parts of the "server" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1238
diff changeset
277 Если в группе только один сервер, параметры <literal>max_fails</literal>,
019f8273ee24 Upstream: translated the missing parts of the "server" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1238
diff changeset
278 <literal>fail_timeout</literal> и <literal>slow_start</literal>
019f8273ee24 Upstream: translated the missing parts of the "server" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1238
diff changeset
279 игнорируются и такой сервер никогда не будет считаться недоступным.
019f8273ee24 Upstream: translated the missing parts of the "server" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1238
diff changeset
280 </note>
019f8273ee24 Upstream: translated the missing parts of the "server" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1238
diff changeset
281 </para>
019f8273ee24 Upstream: translated the missing parts of the "server" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1238
diff changeset
282
533
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
283 </directive>
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
284
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
285
1123
9a9aa8e9d12c Rephrased the "zone" directive, translated into Russian.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1122
diff changeset
286 <directive name="zone">
9a9aa8e9d12c Rephrased the "zone" directive, translated into Russian.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1122
diff changeset
287 <syntax><value>имя</value> <value>размер</value></syntax>
9a9aa8e9d12c Rephrased the "zone" directive, translated into Russian.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1122
diff changeset
288 <default/>
9a9aa8e9d12c Rephrased the "zone" directive, translated into Russian.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1122
diff changeset
289 <context>upstream</context>
1461
4e5cab61e548 Documented status of the zone directive in ngx_http_upstream module.
Vladimir Homutov <vl@nginx.com>
parents: 1450
diff changeset
290 <appeared-in>1.9.0</appeared-in>
1123
9a9aa8e9d12c Rephrased the "zone" directive, translated into Russian.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1122
diff changeset
291
9a9aa8e9d12c Rephrased the "zone" directive, translated into Russian.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1122
diff changeset
292 <para>
9a9aa8e9d12c Rephrased the "zone" directive, translated into Russian.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1122
diff changeset
293 Задаёт <value>имя</value> и <value>размер</value> зоны разделяемой памяти,
1243
831215432a4f Upstream: revised the Russian text of the "zone" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1242
diff changeset
294 в которой хранятся конфигурация группы и её рабочее состояние,
1123
9a9aa8e9d12c Rephrased the "zone" directive, translated into Russian.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1122
diff changeset
295 разделяемые между рабочими процессами.
1461
4e5cab61e548 Documented status of the zone directive in ngx_http_upstream module.
Vladimir Homutov <vl@nginx.com>
parents: 1450
diff changeset
296 </para>
4e5cab61e548 Documented status of the zone directive in ngx_http_upstream module.
Vladimir Homutov <vl@nginx.com>
parents: 1450
diff changeset
297
4e5cab61e548 Documented status of the zone directive in ngx_http_upstream module.
Vladimir Homutov <vl@nginx.com>
parents: 1450
diff changeset
298 <para>
4e5cab61e548 Documented status of the zone directive in ngx_http_upstream module.
Vladimir Homutov <vl@nginx.com>
parents: 1450
diff changeset
299 Дополнительно, как часть
4e5cab61e548 Documented status of the zone directive in ngx_http_upstream module.
Vladimir Homutov <vl@nginx.com>
parents: 1450
diff changeset
300 <commercial_version>коммерческой подписки</commercial_version>,
4e5cab61e548 Documented status of the zone directive in ngx_http_upstream module.
Vladimir Homutov <vl@nginx.com>
parents: 1450
diff changeset
301 в таких группах для изменения состава группы
1243
831215432a4f Upstream: revised the Russian text of the "zone" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1242
diff changeset
302 или настроек отдельных серверов
831215432a4f Upstream: revised the Russian text of the "zone" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1242
diff changeset
303 нет необходимости перезапускать nginx.
1123
9a9aa8e9d12c Rephrased the "zone" directive, translated into Russian.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1122
diff changeset
304 Конфигурация доступна через специальный location,
1450
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1418
diff changeset
305 в котором указана директива
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1418
diff changeset
306 <link doc="ngx_http_upstream_conf_module.xml" id="upstream_conf"/>.
1123
9a9aa8e9d12c Rephrased the "zone" directive, translated into Russian.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1122
diff changeset
307 </para>
9a9aa8e9d12c Rephrased the "zone" directive, translated into Russian.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1122
diff changeset
308
9a9aa8e9d12c Rephrased the "zone" directive, translated into Russian.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1122
diff changeset
309 </directive>
9a9aa8e9d12c Rephrased the "zone" directive, translated into Russian.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1122
diff changeset
310
9a9aa8e9d12c Rephrased the "zone" directive, translated into Russian.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1122
diff changeset
311
1230
6cc809881694 Upstream: added the "hash" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1194
diff changeset
312 <directive name="hash">
6cc809881694 Upstream: added the "hash" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1194
diff changeset
313 <syntax><value>ключ</value> [<literal>consistent</literal>]</syntax>
6cc809881694 Upstream: added the "hash" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1194
diff changeset
314 <default/>
6cc809881694 Upstream: added the "hash" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1194
diff changeset
315 <context>upstream</context>
6cc809881694 Upstream: added the "hash" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1194
diff changeset
316 <appeared-in>1.7.2</appeared-in>
6cc809881694 Upstream: added the "hash" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1194
diff changeset
317
6cc809881694 Upstream: added the "hash" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1194
diff changeset
318 <para>
6cc809881694 Upstream: added the "hash" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1194
diff changeset
319 Задаёт метод балансировки нагрузки для группы, при котором
6cc809881694 Upstream: added the "hash" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1194
diff changeset
320 соответствие клиента серверу определяется при помощи
6cc809881694 Upstream: added the "hash" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1194
diff changeset
321 хэшированного значения <value>ключа</value>.
6cc809881694 Upstream: added the "hash" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1194
diff changeset
322 В качестве <value>ключа</value> может использоваться
6cc809881694 Upstream: added the "hash" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1194
diff changeset
323 текст, переменные и их комбинации.
6cc809881694 Upstream: added the "hash" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1194
diff changeset
324 Следует отметить, что любое добавление или удаление серверов в группе
6cc809881694 Upstream: added the "hash" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1194
diff changeset
325 может привести к перераспределению большинства ключей на другие серверы.
6cc809881694 Upstream: added the "hash" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1194
diff changeset
326 Метод совместим с библиотекой Perl
6cc809881694 Upstream: added the "hash" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1194
diff changeset
327 <link url="http://search.cpan.org/perldoc?Cache%3A%3AMemcached">Cache::Memcached</link>.
6cc809881694 Upstream: added the "hash" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1194
diff changeset
328 </para>
6cc809881694 Upstream: added the "hash" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1194
diff changeset
329
6cc809881694 Upstream: added the "hash" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1194
diff changeset
330 <para>
6cc809881694 Upstream: added the "hash" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1194
diff changeset
331 Если задан параметр <literal>consistent</literal>, то вместо
6cc809881694 Upstream: added the "hash" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1194
diff changeset
332 вышеописанного метода будет использоваться метод консистентного хэширования
6cc809881694 Upstream: added the "hash" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1194
diff changeset
333 <link url="http://www.last.fm/user/RJ/journal/2007/04/10/392555/">ketama</link>.
6cc809881694 Upstream: added the "hash" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1194
diff changeset
334 Метод гарантирует, что при добавлении сервера в группу или его удалении
6cc809881694 Upstream: added the "hash" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1194
diff changeset
335 на другие серверы будет перераспределено минимальное число ключей.
6cc809881694 Upstream: added the "hash" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1194
diff changeset
336 Применение метода для кэширующих серверов обеспечивает
6cc809881694 Upstream: added the "hash" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1194
diff changeset
337 больший процент попаданий в кэш.
6cc809881694 Upstream: added the "hash" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1194
diff changeset
338 Метод совместим с библиотекой Perl
6cc809881694 Upstream: added the "hash" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1194
diff changeset
339 <link url="http://search.cpan.org/perldoc?Cache%3A%3AMemcached%3A%3AFast">Cache::Memcached::Fast</link>
6cc809881694 Upstream: added the "hash" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1194
diff changeset
340 при значении параметра <value>ketama_points</value> равным 160.
6cc809881694 Upstream: added the "hash" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1194
diff changeset
341 </para>
6cc809881694 Upstream: added the "hash" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1194
diff changeset
342
6cc809881694 Upstream: added the "hash" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1194
diff changeset
343 </directive>
6cc809881694 Upstream: added the "hash" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1194
diff changeset
344
6cc809881694 Upstream: added the "hash" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1194
diff changeset
345
76
4a4caa566120 Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
346 <directive name="ip_hash">
102
c76a257f3fd4 The directive name is now automatically printed in <default> and <syntax>.
Ruslan Ermilov <ru@nginx.com>
parents: 99
diff changeset
347 <syntax/>
99
1d315ef37215 The case <default/> is now language-agnostic.
Ruslan Ermilov <ru@nginx.com>
parents: 79
diff changeset
348 <default/>
76
4a4caa566120 Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
349 <context>upstream</context>
4a4caa566120 Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
350
4a4caa566120 Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
351 <para>
533
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
352 Задаёт для группы метод балансировки нагрузки, при котором запросы
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
353 распределяются по серверам на основе IP-адресов клиентов.
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
354 В качестве ключа для хэширования используются первые три
542
a9e6a8613534 Documented IPv6 support in ip_hash.
Ruslan Ermilov <ru@nginx.com>
parents: 533
diff changeset
355 октета IPv4-адреса клиента или IPv6-адрес клиента целиком.
292
7bc830cc79bb Revision.
Ruslan Ermilov <ru@nginx.com>
parents: 280
diff changeset
356 Метод гарантирует, что запросы одного и того же клиента
7bc830cc79bb Revision.
Ruslan Ermilov <ru@nginx.com>
parents: 280
diff changeset
357 будут всегда передаваться на один и тот же сервер.
1240
019f8273ee24 Upstream: translated the missing parts of the "server" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1238
diff changeset
358 Если же этот сервер будет считаться недоступным,
292
7bc830cc79bb Revision.
Ruslan Ermilov <ru@nginx.com>
parents: 280
diff changeset
359 то запросы этого клиента будут передаваться на другой сервер.
7bc830cc79bb Revision.
Ruslan Ermilov <ru@nginx.com>
parents: 280
diff changeset
360 С большой долей вероятности это также будет один и тот же сервер.
542
a9e6a8613534 Documented IPv6 support in ip_hash.
Ruslan Ermilov <ru@nginx.com>
parents: 533
diff changeset
361 <note>
566
f8148fc88224 Documented 1.2.2 changes.
Ruslan Ermilov <ru@nginx.com>
parents: 542
diff changeset
362 IPv6-адреса поддерживаются начиная с версий 1.3.2 и 1.2.2.
542
a9e6a8613534 Documented IPv6 support in ip_hash.
Ruslan Ermilov <ru@nginx.com>
parents: 533
diff changeset
363 </note>
76
4a4caa566120 Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
364 </para>
4a4caa566120 Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
365
4a4caa566120 Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
366 <para>
4a4caa566120 Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
367 Если один из серверов нужно убрать на некоторое время, то для сохранения
292
7bc830cc79bb Revision.
Ruslan Ermilov <ru@nginx.com>
parents: 280
diff changeset
368 текущего хэширования IP-адресов клиентов этот сервер нужно пометить
7bc830cc79bb Revision.
Ruslan Ermilov <ru@nginx.com>
parents: 280
diff changeset
369 параметром <literal>down</literal>.
76
4a4caa566120 Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
370 </para>
4a4caa566120 Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
371
4a4caa566120 Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
372 <para>
292
7bc830cc79bb Revision.
Ruslan Ermilov <ru@nginx.com>
parents: 280
diff changeset
373 Пример:
76
4a4caa566120 Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
374 <example>
292
7bc830cc79bb Revision.
Ruslan Ermilov <ru@nginx.com>
parents: 280
diff changeset
375 upstream backend {
76
4a4caa566120 Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
376 ip_hash;
4a4caa566120 Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
377
292
7bc830cc79bb Revision.
Ruslan Ermilov <ru@nginx.com>
parents: 280
diff changeset
378 server backend1.example.com;
7bc830cc79bb Revision.
Ruslan Ermilov <ru@nginx.com>
parents: 280
diff changeset
379 server backend2.example.com;
7bc830cc79bb Revision.
Ruslan Ermilov <ru@nginx.com>
parents: 280
diff changeset
380 server backend3.example.com <emphasis>down</emphasis>;
7bc830cc79bb Revision.
Ruslan Ermilov <ru@nginx.com>
parents: 280
diff changeset
381 server backend4.example.com;
76
4a4caa566120 Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
382 }
4a4caa566120 Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
383 </example>
4a4caa566120 Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
384 </para>
4a4caa566120 Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
385
526
4f907cde0382 1.3.1 changes: ip_hash+weight, least_conn.
Ruslan Ermilov <ru@nginx.com>
parents: 367
diff changeset
386 <para>
4f907cde0382 1.3.1 changes: ip_hash+weight, least_conn.
Ruslan Ermilov <ru@nginx.com>
parents: 367
diff changeset
387 <note>
566
f8148fc88224 Documented 1.2.2 changes.
Ruslan Ermilov <ru@nginx.com>
parents: 542
diff changeset
388 До версий 1.3.1 и 1.2.2 для серверов, использующих метод балансировки нагрузки
526
4f907cde0382 1.3.1 changes: ip_hash+weight, least_conn.
Ruslan Ermilov <ru@nginx.com>
parents: 367
diff changeset
389 <literal>ip_hash</literal>, нельзя было задать вес.
4f907cde0382 1.3.1 changes: ip_hash+weight, least_conn.
Ruslan Ermilov <ru@nginx.com>
parents: 367
diff changeset
390 </note>
4f907cde0382 1.3.1 changes: ip_hash+weight, least_conn.
Ruslan Ermilov <ru@nginx.com>
parents: 367
diff changeset
391 </para>
4f907cde0382 1.3.1 changes: ip_hash+weight, least_conn.
Ruslan Ermilov <ru@nginx.com>
parents: 367
diff changeset
392
76
4a4caa566120 Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
393 </directive>
4a4caa566120 Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
394
4a4caa566120 Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
395
316
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
396 <directive name="keepalive">
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
397 <syntax><value>соединения</value></syntax>
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
398 <default/>
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
399 <context>upstream</context>
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
400 <appeared-in>1.1.4</appeared-in>
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
401
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
402 <para>
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
403 Задействует кэш соединений для группы серверов.
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
404 </para>
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
405
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
406 <para>
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
407 Параметр <value>соединения</value> устанавливает максимальное число
654
841118e33f41 Refined the text about cache of connections to upstream servers.
Ruslan Ermilov <ru@nginx.com>
parents: 589
diff changeset
408 неактивных постоянных соединений с серверами группы, которые будут
841118e33f41 Refined the text about cache of connections to upstream servers.
Ruslan Ermilov <ru@nginx.com>
parents: 589
diff changeset
409 сохраняться в кэше каждого рабочего процесса.
841118e33f41 Refined the text about cache of connections to upstream servers.
Ruslan Ermilov <ru@nginx.com>
parents: 589
diff changeset
410 При превышении этого числа наиболее давно не используемые соединения
841118e33f41 Refined the text about cache of connections to upstream servers.
Ruslan Ermilov <ru@nginx.com>
parents: 589
diff changeset
411 закрываются.
316
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
412 <note>
654
841118e33f41 Refined the text about cache of connections to upstream servers.
Ruslan Ermilov <ru@nginx.com>
parents: 589
diff changeset
413 Следует особо отметить, что директива <literal>keepalive</literal>
841118e33f41 Refined the text about cache of connections to upstream servers.
Ruslan Ermilov <ru@nginx.com>
parents: 589
diff changeset
414 не ограничивает общее число соединений с серверами группы, которые
841118e33f41 Refined the text about cache of connections to upstream servers.
Ruslan Ermilov <ru@nginx.com>
parents: 589
diff changeset
415 рабочие процессы nginx могут открыть.
966
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
416 Параметр <value>соединения</value> следует устанавливать достаточно
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
417 консервативно, чтобы серверы группы по-прежнему могли обрабатывать
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
418 новые входящие соединения.
316
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
419 </note>
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
420 </para>
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
421
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
422 <para>
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
423 Пример конфигурации группы серверов memcached с постоянными соединениями:
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
424 <example>
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
425 upstream memcached_backend {
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
426 server 127.0.0.1:11211;
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
427 server 10.0.0.2:11211;
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
428
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
429 keepalive 32;
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
430 }
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
431
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
432 server {
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
433 ...
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
434
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
435 location /memcached/ {
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
436 set $memcached_key $uri;
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
437 memcached_pass memcached_backend;
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
438 }
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
439
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
440 }
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
441 </example>
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
442 </para>
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
443
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
444 <para>
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
445 Для HTTP директиву
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
446 <link doc="ngx_http_proxy_module.xml" id="proxy_http_version"/>
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
447 следует установить в “<literal>1.1</literal>”,
367
f4033b9bc4ec - Removed unnecessary instances of unbreakable space.
Ruslan Ermilov <ru@nginx.com>
parents: 325
diff changeset
448 а поле заголовка <header>Connection</header> — очистить:
316
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
449 <example>
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
450 upstream http_backend {
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
451 server 127.0.0.1:8080;
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
452
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
453 keepalive 16;
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
454 }
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
455
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
456 server {
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
457 ...
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
458
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
459 location /http/ {
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
460 proxy_pass http://http_backend;
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
461 proxy_http_version 1.1;
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
462 proxy_set_header Connection "";
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
463 ...
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
464 }
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
465 }
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
466 </example>
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
467 </para>
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
468
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
469 <para>
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
470 <note>
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
471 Хоть это и не рекомендуется, но также возможно использование постоянных
966
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
472 соединений с HTTP/1.0, путём передачи поля заголовка
316
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
473 <header>Connection: Keep-Alive</header> серверу группы.
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
474 </note>
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
475 </para>
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
476
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
477 <para>
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
478 Для работы постоянных соединений с FastCGI-серверами потребуется
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
479 включить директиву
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
480 <link doc="ngx_http_fastcgi_module.xml" id="fastcgi_keep_conn"/>:
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
481 <example>
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
482 upstream fastcgi_backend {
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
483 server 127.0.0.1:9000;
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
484
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
485 keepalive 8;
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
486 }
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
487
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
488 server {
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
489 ...
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
490
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
491 location /fastcgi/ {
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
492 fastcgi_pass fastcgi_backend;
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
493 fastcgi_keep_conn on;
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
494 ...
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
495 }
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
496 }
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
497 </example>
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
498 </para>
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
499
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
500 <para>
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
501 <note>
533
fb630c3c5039 Revamped the upstream documentation somewhat.
Ruslan Ermilov <ru@nginx.com>
parents: 526
diff changeset
502 При использовании методов балансировки нагрузки, отличных
316
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
503 от стандартного round-robin, следует активировать их до
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
504 директивы <literal>keepalive</literal>.
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
505 </note>
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
506
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
507 <note>
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
508 Протоколы SCGI и uwsgi не определяют семантику постоянных соединений.
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
509 </note>
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
510 </para>
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
511
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
512 </directive>
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
513
1fb1c077658b Documented the following directives: "keepalive", "proxy_http_version",
Ruslan Ermilov <ru@nginx.com>
parents: 292
diff changeset
514
1125
9a95b9026a16 Upstream: reallocated the "queue" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 1124
diff changeset
515 <directive name="least_conn">
9a95b9026a16 Upstream: reallocated the "queue" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 1124
diff changeset
516 <syntax/>
9a95b9026a16 Upstream: reallocated the "queue" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 1124
diff changeset
517 <default/>
9a95b9026a16 Upstream: reallocated the "queue" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 1124
diff changeset
518 <context>upstream</context>
9a95b9026a16 Upstream: reallocated the "queue" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 1124
diff changeset
519 <appeared-in>1.3.1</appeared-in>
9a95b9026a16 Upstream: reallocated the "queue" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 1124
diff changeset
520 <appeared-in>1.2.2</appeared-in>
9a95b9026a16 Upstream: reallocated the "queue" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 1124
diff changeset
521
9a95b9026a16 Upstream: reallocated the "queue" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 1124
diff changeset
522 <para>
9a95b9026a16 Upstream: reallocated the "queue" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 1124
diff changeset
523 Задаёт для группы метод балансировки нагрузки, при котором запрос
9a95b9026a16 Upstream: reallocated the "queue" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 1124
diff changeset
524 передаётся серверу с наименьшим числом активных соединений,
9a95b9026a16 Upstream: reallocated the "queue" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 1124
diff changeset
525 с учётом весов серверов.
9a95b9026a16 Upstream: reallocated the "queue" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 1124
diff changeset
526 Если подходит сразу несколько серверов, они выбираются циклически
9a95b9026a16 Upstream: reallocated the "queue" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 1124
diff changeset
527 (в режиме round-robin) с учётом их весов.
9a95b9026a16 Upstream: reallocated the "queue" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 1124
diff changeset
528 </para>
9a95b9026a16 Upstream: reallocated the "queue" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 1124
diff changeset
529
9a95b9026a16 Upstream: reallocated the "queue" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 1124
diff changeset
530 </directive>
9a95b9026a16 Upstream: reallocated the "queue" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 1124
diff changeset
531
9a95b9026a16 Upstream: reallocated the "queue" directive.
Ruslan Ermilov <ru@nginx.com>
parents: 1124
diff changeset
532
1450
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1418
diff changeset
533 <directive name="least_time">
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1418
diff changeset
534 <syntax><literal>header</literal> | <literal>last_byte</literal></syntax>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1418
diff changeset
535 <default/>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1418
diff changeset
536 <context>upstream</context>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1418
diff changeset
537 <appeared-in>1.7.10</appeared-in>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1418
diff changeset
538
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1418
diff changeset
539 <para>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1418
diff changeset
540 Задаёт для группы метод балансировки нагрузки, при котором запрос
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1418
diff changeset
541 передаётся серверу с наименьшими средним временем ответа и
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1418
diff changeset
542 числом активных соединений с учётом весов серверов.
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1418
diff changeset
543 Если подходит сразу несколько серверов, то они выбираются циклически
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1418
diff changeset
544 (в режиме round-robin) с учётом их весов.
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1418
diff changeset
545 </para>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1418
diff changeset
546
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1418
diff changeset
547 <para>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1418
diff changeset
548 Если указан параметр <literal>header</literal>,
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1418
diff changeset
549 то учитывается время получения
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1418
diff changeset
550 <link id="var_upstream_header_time">заголовка ответа</link>.
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1418
diff changeset
551 Если указан параметр <literal>last_byte</literal>, то учитывается
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1418
diff changeset
552 время получения <link id="var_upstream_response_time">всего ответа</link>.
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1418
diff changeset
553 </para>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1418
diff changeset
554
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1418
diff changeset
555 <para>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1418
diff changeset
556 <note>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1418
diff changeset
557 Эта директива доступна как часть
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1418
diff changeset
558 <commercial_version>коммерческой подписки</commercial_version>.
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1418
diff changeset
559 </note>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1418
diff changeset
560 </para>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1418
diff changeset
561
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1418
diff changeset
562 </directive>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1418
diff changeset
563
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1418
diff changeset
564
1242
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
565 <directive name="health_check">
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
566 <syntax>[<value>параметры</value>]</syntax>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
567 <default/>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
568 <context>location</context>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
569
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
570 <para>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
571 Активирует периодические проверки работоспособности серверов в
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
572 <link id="upstream">группе</link>, указанной в содержащем location.
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
573 </para>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
574
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
575 <para>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
576 Могут быть заданы следующие необязательные параметры:
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
577 <list type="tag">
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
578
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
579 <tag-name id="interval">
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
580 <literal>interval</literal>=<value>время</value>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
581 </tag-name>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
582 <tag-desc>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
583 задаёт интервал между двумя последовательными проверками,
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
584 по умолчанию 5 секунд;
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
585 </tag-desc>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
586
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
587 <tag-name id="fails">
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
588 <literal>fails</literal>=<value>число</value>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
589 </tag-name>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
590 <tag-desc>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
591 задаёт число последовательных неуспешных проверок для определённого сервера,
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
592 после которых сервер будет считаться неработоспособным,
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
593 по умолчанию 1;
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
594 </tag-desc>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
595
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
596 <tag-name id="passes">
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
597 <literal>passes</literal>=<value>число</value>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
598 </tag-name>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
599 <tag-desc>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
600 задаёт число последовательных успешных проверок для определённого сервера,
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
601 после которых сервер будет считаться работоспособным,
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
602 по умолчанию 1;
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
603 </tag-desc>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
604
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
605 <tag-name id="uri">
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
606 <literal>uri</literal>=<value>uri</value>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
607 </tag-name>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
608 <tag-desc>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
609 задаёт URI, используемый в запросах, проверяющих работоспособность,
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
610 по умолчанию “<literal>/</literal>”;
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
611 </tag-desc>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
612
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
613 <tag-name id="hc_match">
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
614 <literal>match</literal>=<value>имя</value>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
615 </tag-name>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
616 <tag-desc>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
617 указывает на блок <literal>match</literal> с условиями, которым должен
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
618 удовлетворять ответ, чтобы результат проверки считался успешным;
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
619 по умолчанию код ответа должен быть 2xx или 3xx.
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
620 </tag-desc>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
621
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
622 </list>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
623 </para>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
624
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
625 <para>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
626 В примере
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
627 <example>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
628 location / {
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
629 proxy_pass http://backend;
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
630 health_check;
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
631 }
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
632 </example>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
633 каждому серверу группы <literal>backend</literal>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
634 с интервалом в 5 секунд посылаются запросы “<literal>/</literal>”.
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
635 Если происходит ошибка или таймаут при работе с сервером, или
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
636 код ответа проксируемого сервера не равен
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
637 2xx или 3xx, проверка считается неуспешной и сервер
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
638 признаётся неработоспособным.
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
639 На неработоспособные серверы клиентские запросы передаваться не будут.
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
640 </para>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
641
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
642 <para>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
643 Проверки работоспособности могут тестировать код ответа,
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
644 наличие или отсутствие определённых полей заголовка и их значений,
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
645 а также содержимое тела ответа.
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
646 Тесты настраиваются отдельно при помощи директивы <link id="match"/>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
647 и указываются в параметре <literal>match</literal>.
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
648 Например:
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
649 <example>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
650 http {
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
651 server {
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
652 ...
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
653 location / {
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
654 proxy_pass http://backend;
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
655 health_check match=welcome;
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
656 }
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
657 }
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
658
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
659 match welcome {
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
660 status 200;
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
661 header Content-Type = text/html;
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
662 body ~ "Welcome to nginx!";
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
663 }
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
664 }
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
665 </example>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
666 В такой конфигурации успешный ответ на проверочный запрос
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
667 должен иметь код 200, тип содержимого “<literal>text/html</literal>”
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
668 и “<literal>Welcome to nginx!</literal>” в теле ответа.
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
669 </para>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
670
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
671 <para>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
672 Группа должна находиться в <link id="zone">зоне разделяемой памяти</link>.
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
673 </para>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
674
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
675 <para>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
676 Если для группы задано несколько проверок,
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
677 то при любой неуспешной проверке соответствующий сервер будет
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
678 считаться неработоспособным.
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
679 </para>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
680
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
681 <para>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
682 <note>
1348
5e45198fa991 Documented that with health checks most variables are useless.
Ruslan Ermilov <ru@nginx.com>
parents: 1259
diff changeset
683 Обратите внимание, что при использовании проверок
5e45198fa991 Documented that with health checks most variables are useless.
Ruslan Ermilov <ru@nginx.com>
parents: 1259
diff changeset
684 большинство переменных имеют пустые значения.
5e45198fa991 Documented that with health checks most variables are useless.
Ruslan Ermilov <ru@nginx.com>
parents: 1259
diff changeset
685 </note>
5e45198fa991 Documented that with health checks most variables are useless.
Ruslan Ermilov <ru@nginx.com>
parents: 1259
diff changeset
686 </para>
5e45198fa991 Documented that with health checks most variables are useless.
Ruslan Ermilov <ru@nginx.com>
parents: 1259
diff changeset
687
5e45198fa991 Documented that with health checks most variables are useless.
Ruslan Ermilov <ru@nginx.com>
parents: 1259
diff changeset
688 <para>
5e45198fa991 Documented that with health checks most variables are useless.
Ruslan Ermilov <ru@nginx.com>
parents: 1259
diff changeset
689 <note>
1242
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
690 Эта директива доступна как часть
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
691 <commercial_version>коммерческой подписки</commercial_version>.
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
692 </note>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
693 </para>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
694
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
695 </directive>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
696
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
697
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
698 <directive name="match">
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
699 <syntax block="yes"><value>имя</value></syntax>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
700 <default/>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
701 <context>http</context>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
702
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
703 <para>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
704 Задаёт именованный набор тестов для анализа ответов
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
705 на запросы проверки работоспособности.
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
706 </para>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
707
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
708 <para>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
709 В ответе могут быть протестированы следующие объекты:
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
710 <list type="tag">
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
711
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
712 <tag-name><literal>status 200;</literal></tag-name>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
713 <tag-desc>код ответа равен 200</tag-desc>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
714
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
715 <tag-name><literal>status ! 500;</literal></tag-name>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
716 <tag-desc>код ответа не равен 500</tag-desc>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
717
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
718 <tag-name><literal>status 200 204;</literal></tag-name>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
719 <tag-desc>код ответа равен 200 или 204</tag-desc>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
720
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
721 <tag-name><literal>status ! 301 302;</literal></tag-name>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
722 <tag-desc>код ответа не равен ни 301, ни 302</tag-desc>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
723
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
724 <tag-name><literal>status 200-399;</literal></tag-name>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
725 <tag-desc>код ответа находится в диапазоне от 200 до 399</tag-desc>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
726
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
727 <tag-name><literal>status ! 400-599;</literal></tag-name>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
728 <tag-desc>код ответа находится вне диапазона от 400 до 599</tag-desc>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
729
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
730 <tag-name><literal>status 301-303 307;</literal></tag-name>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
731 <tag-desc>код ответа равен 301, 302, 303 или 307</tag-desc>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
732
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
733 </list>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
734
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
735 <list type="tag">
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
736
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
737 <tag-name><literal>header Content-Type = text/html;</literal></tag-name>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
738 <tag-desc>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
739 заголовок содержит <header>Content-Type</header>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
740 со значением <literal>text/html</literal>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
741 </tag-desc>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
742
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
743 <tag-name><literal>header Content-Type != text/html;</literal></tag-name>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
744 <tag-desc>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
745 заголовок содержит <header>Content-Type</header>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
746 со значением, отличным от <literal>text/html</literal>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
747 </tag-desc>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
748
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
749 <tag-name><literal>header Connection ~ close;</literal></tag-name>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
750 <tag-desc>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
751 заголовок содержит <header>Connection</header>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
752 со значением, совпадающим с регулярным выражением <literal>close</literal>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
753 </tag-desc>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
754
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
755 <tag-name><literal>header Connection !~ close;</literal></tag-name>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
756 <tag-desc>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
757 заголовок содержит <header>Connection</header>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
758 со значением, не совпадающим с регулярным выражением <literal>close</literal>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
759 </tag-desc>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
760
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
761 <tag-name><literal>header Host;</literal></tag-name>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
762 <tag-desc>заголовок содержит <header>Host</header></tag-desc>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
763
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
764 <tag-name><literal>header ! X-Accel-Redirect;</literal></tag-name>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
765 <tag-desc>заголовок не содержит <header>X-Accel-Redirect</header></tag-desc>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
766
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
767 </list>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
768
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
769 <list type="tag">
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
770
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
771 <tag-name><literal>body ~ "Welcome to nginx!";</literal></tag-name>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
772 <tag-desc>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
773 тело ответа совпадает с регулярным выражением
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
774 “<literal>Welcome to nginx!</literal>”
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
775 </tag-desc>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
776
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
777 <tag-name><literal>body !~ "Welcome to nginx!";</literal></tag-name>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
778 <tag-desc>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
779 тело ответа не совпадает с регулярным выражением
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
780 “<literal>Welcome to nginx!</literal>”
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
781 </tag-desc>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
782
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
783 </list>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
784 </para>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
785
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
786 <para>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
787 Если задано несколько тестов,
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
788 то ответ должен удовлетворять всем тестам.
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
789 <note>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
790 Проверяются только первые 256 Кбайт тела ответа.
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
791 </note>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
792 </para>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
793
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
794 <para>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
795 Примеры:
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
796 <example>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
797 # код ответа 200, тип содержимого "text/html"
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
798 # и тело ответа содержит "Welcome to nginx!"
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
799 match welcome {
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
800 status 200;
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
801 header Content-Type = text/html;
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
802 body ~ "Welcome to nginx!";
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
803 }
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
804 </example>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
805
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
806 <example>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
807 # код ответа не равен 301, 302, 303 и 307 и заголовок не содержит "Refresh:"
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
808 match not_redirect {
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
809 status ! 301-303 307;
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
810 header ! Refresh;
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
811 }
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
812 </example>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
813
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
814 <example>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
815 # код ответа успешный и сервер не в сервисном режиме
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
816 match server_ok {
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
817 status 200-399;
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
818 body !~ "maintenance mode";
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
819 }
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
820 </example>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
821
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
822 </para>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
823
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
824 <para>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
825 <note>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
826 Эта директива доступна как часть
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
827 <commercial_version>коммерческой подписки</commercial_version>.
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
828 </note>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
829 </para>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
830
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
831 </directive>
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
832
935fe5eb82c4 Upstream: translated the "health_check" and "match" directives.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1241
diff changeset
833
1122
594093ef96b1 Upstream: documented the "queue" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1121
diff changeset
834 <directive name="queue">
594093ef96b1 Upstream: documented the "queue" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1121
diff changeset
835 <syntax>
594093ef96b1 Upstream: documented the "queue" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1121
diff changeset
836 <value>число</value>
594093ef96b1 Upstream: documented the "queue" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1121
diff changeset
837 [<literal>timeout</literal>=<value>время</value>]</syntax>
594093ef96b1 Upstream: documented the "queue" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1121
diff changeset
838 <default/>
594093ef96b1 Upstream: documented the "queue" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1121
diff changeset
839 <context>upstream</context>
594093ef96b1 Upstream: documented the "queue" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1121
diff changeset
840 <appeared-in>1.5.12</appeared-in>
594093ef96b1 Upstream: documented the "queue" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1121
diff changeset
841
594093ef96b1 Upstream: documented the "queue" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1121
diff changeset
842 <para>
594093ef96b1 Upstream: documented the "queue" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1121
diff changeset
843 Если при обработке запроса невозможно сразу выбрать сервер группы
594093ef96b1 Upstream: documented the "queue" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1121
diff changeset
844 и в группе есть серверы, у которых число соединений достигло
594093ef96b1 Upstream: documented the "queue" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1121
diff changeset
845 ограничения <link id="max_conns"/>,
594093ef96b1 Upstream: documented the "queue" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1121
diff changeset
846 запрос будет помещён в очередь.
594093ef96b1 Upstream: documented the "queue" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1121
diff changeset
847 Директива задаёт максимальное число запросов, которые могут одновременно
594093ef96b1 Upstream: documented the "queue" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1121
diff changeset
848 находиться в очереди.
594093ef96b1 Upstream: documented the "queue" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1121
diff changeset
849 Если очередь переполнена
594093ef96b1 Upstream: documented the "queue" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1121
diff changeset
850 или за время, задаваемое параметром <literal>timeout</literal>,
594093ef96b1 Upstream: documented the "queue" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1121
diff changeset
851 так и не удастся выбрать сервер для передачи ему запроса,
594093ef96b1 Upstream: documented the "queue" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1121
diff changeset
852 клиенту будет возвращена ошибка.
594093ef96b1 Upstream: documented the "queue" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1121
diff changeset
853 </para>
594093ef96b1 Upstream: documented the "queue" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1121
diff changeset
854
594093ef96b1 Upstream: documented the "queue" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1121
diff changeset
855 <para>
594093ef96b1 Upstream: documented the "queue" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1121
diff changeset
856 По умолчанию параметр <literal>timeout</literal> равен 60 секундам.
594093ef96b1 Upstream: documented the "queue" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1121
diff changeset
857 </para>
594093ef96b1 Upstream: documented the "queue" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1121
diff changeset
858
594093ef96b1 Upstream: documented the "queue" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1121
diff changeset
859 <para>
594093ef96b1 Upstream: documented the "queue" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1121
diff changeset
860 <note>
1128
1594ed379f1f De-i18n'ed <commercial_version/>.
Ruslan Ermilov <ru@nginx.com>
parents: 1127
diff changeset
861 Эта директива доступна как часть
1594ed379f1f De-i18n'ed <commercial_version/>.
Ruslan Ermilov <ru@nginx.com>
parents: 1127
diff changeset
862 <commercial_version>коммерческой подписки</commercial_version>.
1122
594093ef96b1 Upstream: documented the "queue" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1121
diff changeset
863 </note>
594093ef96b1 Upstream: documented the "queue" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1121
diff changeset
864 </para>
594093ef96b1 Upstream: documented the "queue" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1121
diff changeset
865
594093ef96b1 Upstream: documented the "queue" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1121
diff changeset
866 </directive>
594093ef96b1 Upstream: documented the "queue" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1121
diff changeset
867
1234
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
868
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
869 <directive name="sticky">
1259
954dcc02cb63 Upstream: "session learn" sticky method and upstream_conf changes.
Ruslan Ermilov <ru@nginx.com>
parents: 1243
diff changeset
870 <syntax>
954dcc02cb63 Upstream: "session learn" sticky method and upstream_conf changes.
Ruslan Ermilov <ru@nginx.com>
parents: 1243
diff changeset
871 <literal>cookie</literal> <value>имя</value>
954dcc02cb63 Upstream: "session learn" sticky method and upstream_conf changes.
Ruslan Ermilov <ru@nginx.com>
parents: 1243
diff changeset
872 [<literal>expires=</literal><value>время</value>]
954dcc02cb63 Upstream: "session learn" sticky method and upstream_conf changes.
Ruslan Ermilov <ru@nginx.com>
parents: 1243
diff changeset
873 [<literal>domain=</literal><value>домен</value>]
1450
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1418
diff changeset
874 [<literal>httponly</literal>]
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1418
diff changeset
875 [<literal>secure</literal>]
1259
954dcc02cb63 Upstream: "session learn" sticky method and upstream_conf changes.
Ruslan Ermilov <ru@nginx.com>
parents: 1243
diff changeset
876 [<literal>path=</literal><value>путь</value>]</syntax>
954dcc02cb63 Upstream: "session learn" sticky method and upstream_conf changes.
Ruslan Ermilov <ru@nginx.com>
parents: 1243
diff changeset
877 <syntax>
954dcc02cb63 Upstream: "session learn" sticky method and upstream_conf changes.
Ruslan Ermilov <ru@nginx.com>
parents: 1243
diff changeset
878 <literal>route</literal> <value>переменная</value> ...</syntax>
954dcc02cb63 Upstream: "session learn" sticky method and upstream_conf changes.
Ruslan Ermilov <ru@nginx.com>
parents: 1243
diff changeset
879 <syntax>
954dcc02cb63 Upstream: "session learn" sticky method and upstream_conf changes.
Ruslan Ermilov <ru@nginx.com>
parents: 1243
diff changeset
880 <literal>learn</literal>
954dcc02cb63 Upstream: "session learn" sticky method and upstream_conf changes.
Ruslan Ermilov <ru@nginx.com>
parents: 1243
diff changeset
881 <literal>create=</literal><value>$переменная</value>
954dcc02cb63 Upstream: "session learn" sticky method and upstream_conf changes.
Ruslan Ermilov <ru@nginx.com>
parents: 1243
diff changeset
882 <literal>lookup=</literal><value>$переменная</value>
954dcc02cb63 Upstream: "session learn" sticky method and upstream_conf changes.
Ruslan Ermilov <ru@nginx.com>
parents: 1243
diff changeset
883 <literal>zone=</literal><value>имя</value>:<value>размер</value>
954dcc02cb63 Upstream: "session learn" sticky method and upstream_conf changes.
Ruslan Ermilov <ru@nginx.com>
parents: 1243
diff changeset
884 [<literal>timeout=</literal><value>время</value>]</syntax>
1234
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
885 <default/>
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
886 <context>upstream</context>
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
887 <appeared-in>1.5.7</appeared-in>
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
888
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
889 <para>
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
890 Включает режим привязки сеансов, в котором запросы клиента
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
891 будут передаваться на один и тот же сервер группы.
1259
954dcc02cb63 Upstream: "session learn" sticky method and upstream_conf changes.
Ruslan Ermilov <ru@nginx.com>
parents: 1243
diff changeset
892 Доступны три метода:
954dcc02cb63 Upstream: "session learn" sticky method and upstream_conf changes.
Ruslan Ermilov <ru@nginx.com>
parents: 1243
diff changeset
893 <list type="tag">
954dcc02cb63 Upstream: "session learn" sticky method and upstream_conf changes.
Ruslan Ermilov <ru@nginx.com>
parents: 1243
diff changeset
894 <tag-name id="sticky_cookie"><literal>cookie</literal></tag-name>
954dcc02cb63 Upstream: "session learn" sticky method and upstream_conf changes.
Ruslan Ermilov <ru@nginx.com>
parents: 1243
diff changeset
895 <tag-desc>
1234
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
896
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
897 <para>
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
898 При использовании метода <literal>cookie</literal> информация о
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
899 назначенном сервере передаётся в HTTP-куке:
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
900 <example>
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
901 upstream backend {
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
902 server backend1.example.com;
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
903 server backend2.example.com;
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
904
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
905 sticky cookie srv_id expires=1h domain=.example.com path=/;
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
906 }
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
907 </example>
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
908 </para>
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
909
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
910 <para>
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
911 Запрос от клиента, ещё не привязанного к определённому серверу,
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
912 передаётся на сервер, выбранный согласно настроенному методу балансировки.
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
913 Дальнейшие запросы от этого клиента передаются на тот же сервер.
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
914 Если назначенный сервер не может обработать запрос, выбирается новый
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
915 сервер как если бы клиент не имел привязки к серверу.
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
916 </para>
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
917
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
918 <para>
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
919 Первый параметр задаёт имя куки, которую необходимо установить или проверить.
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
920 Дополнительные параметры могут быть следующими:
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
921 <list type="tag">
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
922
1450
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1418
diff changeset
923 <tag-name><literal>expires=</literal><value>время</value></tag-name>
1234
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
924 <tag-desc>
1450
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1418
diff changeset
925 Задаёт <value>время</value>, в течение которого браузеру необходимо хранить куку.
1234
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
926 Специальное значение <literal>max</literal> устанавливает срок хранения куки до
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
927 31 декабря 2037 года 23:55:55 GMT.
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
928 Если параметр не указан, то время действия куки ограничивается сессией браузера.
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
929 </tag-desc>
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
930
1450
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1418
diff changeset
931 <tag-name><literal>domain=</literal><value>домен</value></tag-name>
1234
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
932 <tag-desc>
1450
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1418
diff changeset
933 Задаёт <value>домен</value>, для которого устанавливается кука.
1234
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
934 </tag-desc>
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
935
1450
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1418
diff changeset
936 <tag-name><literal>httponly</literal></tag-name>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1418
diff changeset
937 <tag-desc>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1418
diff changeset
938 Добавляет атрибут <literal>HttpOnly</literal> к куке (1.7.11).
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1418
diff changeset
939 </tag-desc>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1418
diff changeset
940
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1418
diff changeset
941 <tag-name><literal>secure</literal></tag-name>
1234
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
942 <tag-desc>
1450
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1418
diff changeset
943 Добавляет атрибут <literal>Secure</literal> к куке (1.7.11).
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1418
diff changeset
944 </tag-desc>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1418
diff changeset
945
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1418
diff changeset
946 <tag-name><literal>path=</literal><value>путь</value></tag-name>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1418
diff changeset
947 <tag-desc>
f5b5eefc43cb Updated commercial docs for the upcoming release.
Ruslan Ermilov <ru@nginx.com>
parents: 1418
diff changeset
948 Задаёт <value>путь</value>, для которого устанавливается кука.
1234
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
949 </tag-desc>
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
950
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
951 </list>
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
952 Если пропущен тот или иной параметр, то соответствующего поля в куке не будет.
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
953 </para>
1259
954dcc02cb63 Upstream: "session learn" sticky method and upstream_conf changes.
Ruslan Ermilov <ru@nginx.com>
parents: 1243
diff changeset
954 </tag-desc>
954dcc02cb63 Upstream: "session learn" sticky method and upstream_conf changes.
Ruslan Ermilov <ru@nginx.com>
parents: 1243
diff changeset
955
954dcc02cb63 Upstream: "session learn" sticky method and upstream_conf changes.
Ruslan Ermilov <ru@nginx.com>
parents: 1243
diff changeset
956 <tag-name id="sticky_route"><literal>route</literal></tag-name>
954dcc02cb63 Upstream: "session learn" sticky method and upstream_conf changes.
Ruslan Ermilov <ru@nginx.com>
parents: 1243
diff changeset
957 <tag-desc>
1234
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
958
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
959 <para>
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
960 При использовании метода <literal>route</literal> проксируемый сервер назначает
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
961 клиенту маршрут по получении первого запроса.
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
962 Все последующие запросы от этого клиента будут содержать информацию о
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
963 маршруте в куке или URI.
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
964 Эта информация сравнивается с параметром “<literal>route</literal>” директивы
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
965 <link id="server"/> для идентификации сервера, на который
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
966 следует проксировать запрос.
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
967 Если назначенный сервер не может обработать запрос, выбирается новый сервер
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
968 согласно настроенному методу балансировки как если бы в запросе не было
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
969 информации о маршруте.
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
970 </para>
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
971
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
972 <para>
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
973 Параметры метода <literal>route</literal> задают переменные, которые
1238
763db729e6a4 Upstream: corrected translation in sticky route.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1237
diff changeset
974 могут содержать информацию о маршруте.
1234
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
975 Первая непустая переменная используется для поиска соответствующего сервера.
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
976 </para>
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
977
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
978 <para>
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
979 Пример:
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
980 <example>
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
981 map $cookie_jsessionid $route_cookie {
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
982 ~.+\.(?P&lt;route>\w+)$ $route;
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
983 }
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
984
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
985 map $request_uri $route_uri {
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
986 ~jsessionid=.+\.(?P&lt;route>\w+)$ $route;
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
987 }
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
988
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
989 upstream backend {
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
990 server backend1.example.com route=a;
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
991 server backend2.example.com route=b;
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
992
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
993 sticky route $route_cookie $route_uri;
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
994 }
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
995 </example>
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
996 В этом примере маршрут берётся из куки “<literal>JSESSIONID</literal>”,
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
997 если она присутствует в запросе.
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
998 В противном случае используется маршрут из URI.
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
999 </para>
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
1000
1259
954dcc02cb63 Upstream: "session learn" sticky method and upstream_conf changes.
Ruslan Ermilov <ru@nginx.com>
parents: 1243
diff changeset
1001 </tag-desc>
954dcc02cb63 Upstream: "session learn" sticky method and upstream_conf changes.
Ruslan Ermilov <ru@nginx.com>
parents: 1243
diff changeset
1002
954dcc02cb63 Upstream: "session learn" sticky method and upstream_conf changes.
Ruslan Ermilov <ru@nginx.com>
parents: 1243
diff changeset
1003 <tag-name id="sticky_learn"><literal>learn</literal></tag-name>
954dcc02cb63 Upstream: "session learn" sticky method and upstream_conf changes.
Ruslan Ermilov <ru@nginx.com>
parents: 1243
diff changeset
1004 <tag-desc>
954dcc02cb63 Upstream: "session learn" sticky method and upstream_conf changes.
Ruslan Ermilov <ru@nginx.com>
parents: 1243
diff changeset
1005 <para>
954dcc02cb63 Upstream: "session learn" sticky method and upstream_conf changes.
Ruslan Ermilov <ru@nginx.com>
parents: 1243
diff changeset
1006 При использовании метода <literal>learn</literal> (1.7.1) nginx
954dcc02cb63 Upstream: "session learn" sticky method and upstream_conf changes.
Ruslan Ermilov <ru@nginx.com>
parents: 1243
diff changeset
1007 анализирует ответы от вышестоящего сервера и запоминает
954dcc02cb63 Upstream: "session learn" sticky method and upstream_conf changes.
Ruslan Ermilov <ru@nginx.com>
parents: 1243
diff changeset
1008 начатые им сессии, которые обычно передаются в HTTP-куке.
954dcc02cb63 Upstream: "session learn" sticky method and upstream_conf changes.
Ruslan Ermilov <ru@nginx.com>
parents: 1243
diff changeset
1009 <example>
954dcc02cb63 Upstream: "session learn" sticky method and upstream_conf changes.
Ruslan Ermilov <ru@nginx.com>
parents: 1243
diff changeset
1010 upstream backend {
954dcc02cb63 Upstream: "session learn" sticky method and upstream_conf changes.
Ruslan Ermilov <ru@nginx.com>
parents: 1243
diff changeset
1011 server backend1.example.com:8080;
954dcc02cb63 Upstream: "session learn" sticky method and upstream_conf changes.
Ruslan Ermilov <ru@nginx.com>
parents: 1243
diff changeset
1012 server backend2.example.com:8081;
954dcc02cb63 Upstream: "session learn" sticky method and upstream_conf changes.
Ruslan Ermilov <ru@nginx.com>
parents: 1243
diff changeset
1013
954dcc02cb63 Upstream: "session learn" sticky method and upstream_conf changes.
Ruslan Ermilov <ru@nginx.com>
parents: 1243
diff changeset
1014 sticky learn
954dcc02cb63 Upstream: "session learn" sticky method and upstream_conf changes.
Ruslan Ermilov <ru@nginx.com>
parents: 1243
diff changeset
1015 create=$upstream_cookie_sessionid
954dcc02cb63 Upstream: "session learn" sticky method and upstream_conf changes.
Ruslan Ermilov <ru@nginx.com>
parents: 1243
diff changeset
1016 lookup=$cookie_sessionid
954dcc02cb63 Upstream: "session learn" sticky method and upstream_conf changes.
Ruslan Ermilov <ru@nginx.com>
parents: 1243
diff changeset
1017 zone=client_sessions:1m;
954dcc02cb63 Upstream: "session learn" sticky method and upstream_conf changes.
Ruslan Ermilov <ru@nginx.com>
parents: 1243
diff changeset
1018 }
954dcc02cb63 Upstream: "session learn" sticky method and upstream_conf changes.
Ruslan Ermilov <ru@nginx.com>
parents: 1243
diff changeset
1019 </example>
954dcc02cb63 Upstream: "session learn" sticky method and upstream_conf changes.
Ruslan Ermilov <ru@nginx.com>
parents: 1243
diff changeset
1020
954dcc02cb63 Upstream: "session learn" sticky method and upstream_conf changes.
Ruslan Ermilov <ru@nginx.com>
parents: 1243
diff changeset
1021 В примере выше сервер группы создаёт сессию путём установки
954dcc02cb63 Upstream: "session learn" sticky method and upstream_conf changes.
Ruslan Ermilov <ru@nginx.com>
parents: 1243
diff changeset
1022 куки “<literal>SESSIONID</literal>” в своём ответе.
954dcc02cb63 Upstream: "session learn" sticky method and upstream_conf changes.
Ruslan Ermilov <ru@nginx.com>
parents: 1243
diff changeset
1023 Последующие запросы с этой кукой будут передаваться на этот же сервер.
954dcc02cb63 Upstream: "session learn" sticky method and upstream_conf changes.
Ruslan Ermilov <ru@nginx.com>
parents: 1243
diff changeset
1024 Если сервер не может обработать запрос, выбирается новый
954dcc02cb63 Upstream: "session learn" sticky method and upstream_conf changes.
Ruslan Ermilov <ru@nginx.com>
parents: 1243
diff changeset
1025 сервер как если бы клиент не имел привязки к серверу.
954dcc02cb63 Upstream: "session learn" sticky method and upstream_conf changes.
Ruslan Ermilov <ru@nginx.com>
parents: 1243
diff changeset
1026 </para>
954dcc02cb63 Upstream: "session learn" sticky method and upstream_conf changes.
Ruslan Ermilov <ru@nginx.com>
parents: 1243
diff changeset
1027
954dcc02cb63 Upstream: "session learn" sticky method and upstream_conf changes.
Ruslan Ermilov <ru@nginx.com>
parents: 1243
diff changeset
1028 <para>
954dcc02cb63 Upstream: "session learn" sticky method and upstream_conf changes.
Ruslan Ermilov <ru@nginx.com>
parents: 1243
diff changeset
1029 Параметры <literal>create</literal> и <literal>lookup</literal>
954dcc02cb63 Upstream: "session learn" sticky method and upstream_conf changes.
Ruslan Ermilov <ru@nginx.com>
parents: 1243
diff changeset
1030 задают переменные, в которых соответственно указывается способ
954dcc02cb63 Upstream: "session learn" sticky method and upstream_conf changes.
Ruslan Ermilov <ru@nginx.com>
parents: 1243
diff changeset
1031 создания новых и поиска существующих сессий.
954dcc02cb63 Upstream: "session learn" sticky method and upstream_conf changes.
Ruslan Ermilov <ru@nginx.com>
parents: 1243
diff changeset
1032 Оба параметра могут быть указаны больше одного раза
954dcc02cb63 Upstream: "session learn" sticky method and upstream_conf changes.
Ruslan Ermilov <ru@nginx.com>
parents: 1243
diff changeset
1033 (в этом случае используется первая непустая переменная).
954dcc02cb63 Upstream: "session learn" sticky method and upstream_conf changes.
Ruslan Ermilov <ru@nginx.com>
parents: 1243
diff changeset
1034 </para>
954dcc02cb63 Upstream: "session learn" sticky method and upstream_conf changes.
Ruslan Ermilov <ru@nginx.com>
parents: 1243
diff changeset
1035
954dcc02cb63 Upstream: "session learn" sticky method and upstream_conf changes.
Ruslan Ermilov <ru@nginx.com>
parents: 1243
diff changeset
1036 <para>
954dcc02cb63 Upstream: "session learn" sticky method and upstream_conf changes.
Ruslan Ermilov <ru@nginx.com>
parents: 1243
diff changeset
1037 Сессии хранятся в зоне разделяемой памяти, <value>имя</value> и
954dcc02cb63 Upstream: "session learn" sticky method and upstream_conf changes.
Ruslan Ermilov <ru@nginx.com>
parents: 1243
diff changeset
1038 <value>размер</value> которой задаются параметром <literal>zone</literal>.
954dcc02cb63 Upstream: "session learn" sticky method and upstream_conf changes.
Ruslan Ermilov <ru@nginx.com>
parents: 1243
diff changeset
1039 Зоны размером в 1 мегабайт достаточно для хранения около 8 тысяч сессий
954dcc02cb63 Upstream: "session learn" sticky method and upstream_conf changes.
Ruslan Ermilov <ru@nginx.com>
parents: 1243
diff changeset
1040 на 64-битной платформе.
954dcc02cb63 Upstream: "session learn" sticky method and upstream_conf changes.
Ruslan Ermilov <ru@nginx.com>
parents: 1243
diff changeset
1041 Сессии, к которым не было обращений в течение времени, заданного параметром
954dcc02cb63 Upstream: "session learn" sticky method and upstream_conf changes.
Ruslan Ermilov <ru@nginx.com>
parents: 1243
diff changeset
1042 <literal>timeout</literal>, удаляются из зоны.
954dcc02cb63 Upstream: "session learn" sticky method and upstream_conf changes.
Ruslan Ermilov <ru@nginx.com>
parents: 1243
diff changeset
1043 По умолчанию <literal>timeout</literal> равен 10 минутам.
954dcc02cb63 Upstream: "session learn" sticky method and upstream_conf changes.
Ruslan Ermilov <ru@nginx.com>
parents: 1243
diff changeset
1044 </para>
954dcc02cb63 Upstream: "session learn" sticky method and upstream_conf changes.
Ruslan Ermilov <ru@nginx.com>
parents: 1243
diff changeset
1045
954dcc02cb63 Upstream: "session learn" sticky method and upstream_conf changes.
Ruslan Ermilov <ru@nginx.com>
parents: 1243
diff changeset
1046 </tag-desc>
954dcc02cb63 Upstream: "session learn" sticky method and upstream_conf changes.
Ruslan Ermilov <ru@nginx.com>
parents: 1243
diff changeset
1047 </list>
954dcc02cb63 Upstream: "session learn" sticky method and upstream_conf changes.
Ruslan Ermilov <ru@nginx.com>
parents: 1243
diff changeset
1048 </para>
954dcc02cb63 Upstream: "session learn" sticky method and upstream_conf changes.
Ruslan Ermilov <ru@nginx.com>
parents: 1243
diff changeset
1049
1234
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
1050 <para>
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
1051 <note>
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
1052 Эта директива доступна как часть
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
1053 <commercial_version>коммерческой подписки</commercial_version>.
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
1054 </note>
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
1055 </para>
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
1056
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
1057 </directive>
314801ed88e7 Upstream: translated the "sticky" directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1230
diff changeset
1058
1237
e0a1a929a458 Upstream: translated the sticky_cookie_insert directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1234
diff changeset
1059
e0a1a929a458 Upstream: translated the sticky_cookie_insert directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1234
diff changeset
1060 <directive name="sticky_cookie_insert">
e0a1a929a458 Upstream: translated the sticky_cookie_insert directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1234
diff changeset
1061 <syntax><value>имя</value>
e0a1a929a458 Upstream: translated the sticky_cookie_insert directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1234
diff changeset
1062 [<literal>expires=</literal><value>время</value>]
e0a1a929a458 Upstream: translated the sticky_cookie_insert directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1234
diff changeset
1063 [<literal>domain=</literal><value>домен</value>]
e0a1a929a458 Upstream: translated the sticky_cookie_insert directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1234
diff changeset
1064 [<literal>path=</literal><value>путь</value>]</syntax>
e0a1a929a458 Upstream: translated the sticky_cookie_insert directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1234
diff changeset
1065 <default/>
e0a1a929a458 Upstream: translated the sticky_cookie_insert directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1234
diff changeset
1066 <context>upstream</context>
e0a1a929a458 Upstream: translated the sticky_cookie_insert directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1234
diff changeset
1067
e0a1a929a458 Upstream: translated the sticky_cookie_insert directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1234
diff changeset
1068 <para>
e0a1a929a458 Upstream: translated the sticky_cookie_insert directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1234
diff changeset
1069 Эта директива устарела начиная с версии 1.5.7.
e0a1a929a458 Upstream: translated the sticky_cookie_insert directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1234
diff changeset
1070 Вместо неё следует использовать аналогичную директиву
e0a1a929a458 Upstream: translated the sticky_cookie_insert directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1234
diff changeset
1071 <link id="sticky"/> с изменённым синтаксисом:
e0a1a929a458 Upstream: translated the sticky_cookie_insert directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1234
diff changeset
1072 <note>
e0a1a929a458 Upstream: translated the sticky_cookie_insert directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1234
diff changeset
1073 <literal>sticky cookie</literal> <value>имя</value>
e0a1a929a458 Upstream: translated the sticky_cookie_insert directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1234
diff changeset
1074 [<literal>expires=</literal><value>время</value>]
e0a1a929a458 Upstream: translated the sticky_cookie_insert directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1234
diff changeset
1075 [<literal>domain=</literal><value>домен</value>]
e0a1a929a458 Upstream: translated the sticky_cookie_insert directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1234
diff changeset
1076 [<literal>path=</literal><value>путь</value>];
e0a1a929a458 Upstream: translated the sticky_cookie_insert directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1234
diff changeset
1077 </note>
e0a1a929a458 Upstream: translated the sticky_cookie_insert directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1234
diff changeset
1078 </para>
e0a1a929a458 Upstream: translated the sticky_cookie_insert directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1234
diff changeset
1079
e0a1a929a458 Upstream: translated the sticky_cookie_insert directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1234
diff changeset
1080 </directive>
e0a1a929a458 Upstream: translated the sticky_cookie_insert directive.
Yaroslav Zhuravlev <yar@nginx.com>
parents: 1234
diff changeset
1081
76
4a4caa566120 Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
1082 </section>
4a4caa566120 Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
1083
4a4caa566120 Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
1084
292
7bc830cc79bb Revision.
Ruslan Ermilov <ru@nginx.com>
parents: 280
diff changeset
1085 <section id="variables" name="Встроенные переменные">
76
4a4caa566120 Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
1086
4a4caa566120 Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
1087 <para>
292
7bc830cc79bb Revision.
Ruslan Ermilov <ru@nginx.com>
parents: 280
diff changeset
1088 Модуль <literal>ngx_http_upstream_module</literal>
7bc830cc79bb Revision.
Ruslan Ermilov <ru@nginx.com>
parents: 280
diff changeset
1089 поддерживает следующие встроенные переменные:
7bc830cc79bb Revision.
Ruslan Ermilov <ru@nginx.com>
parents: 280
diff changeset
1090 <list type="tag">
76
4a4caa566120 Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
1091
1155
07402a11fd8d Assigned IDs to tags describing variables.
Vladimir Homutov <vl@nginx.com>
parents: 1128
diff changeset
1092 <tag-name id="var_upstream_addr"><var>$upstream_addr</var></tag-name>
292
7bc830cc79bb Revision.
Ruslan Ermilov <ru@nginx.com>
parents: 280
diff changeset
1093 <tag-desc>
1391
0702cc081c63 Revised descriptions of upstream module variables.
Ruslan Ermilov <ru@nginx.com>
parents: 1386
diff changeset
1094 хранит IP-адрес и порт или путь к UNIX-сокету сервера группы.
76
4a4caa566120 Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
1095 Если при обработке запроса были сделаны обращения к нескольким серверам,
4a4caa566120 Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
1096 то их адреса разделяются запятой, например,
292
7bc830cc79bb Revision.
Ruslan Ermilov <ru@nginx.com>
parents: 280
diff changeset
1097 “<literal>192.168.1.1:80, 192.168.1.2:80, unix:/tmp/sock</literal>”.
256
c78b2d6fe261 Use another term for "redirect".
Ruslan Ermilov <ru@nginx.com>
parents: 222
diff changeset
1098 Если произошло внутреннее перенаправление от одной группы серверов на другую
c78b2d6fe261 Use another term for "redirect".
Ruslan Ermilov <ru@nginx.com>
parents: 222
diff changeset
1099 с помощью
292
7bc830cc79bb Revision.
Ruslan Ermilov <ru@nginx.com>
parents: 280
diff changeset
1100 <header>X-Accel-Redirect</header> или
7bc830cc79bb Revision.
Ruslan Ermilov <ru@nginx.com>
parents: 280
diff changeset
1101 <link doc="ngx_http_core_module.xml" id="error_page"/>,
966
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
1102 то адреса, соответствующие разным группам серверов, разделяются двоеточием,
95c3c3bbf1ce Text review.
Egor Nikitin <yegor.nikitin@gmail.com>
parents: 942
diff changeset
1103 например,
292
7bc830cc79bb Revision.
Ruslan Ermilov <ru@nginx.com>
parents: 280
diff changeset
1104 “<literal>192.168.1.1:80, 192.168.1.2:80, unix:/tmp/sock : 192.168.10.1:80, 192.168.10.2:80</literal>”.
7bc830cc79bb Revision.
Ruslan Ermilov <ru@nginx.com>
parents: 280
diff changeset
1105 </tag-desc>
76
4a4caa566120 Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
1106
1155
07402a11fd8d Assigned IDs to tags describing variables.
Vladimir Homutov <vl@nginx.com>
parents: 1128
diff changeset
1107 <tag-name id="var_upstream_cache_status"><var>$upstream_cache_status</var>
07402a11fd8d Assigned IDs to tags describing variables.
Vladimir Homutov <vl@nginx.com>
parents: 1128
diff changeset
1108 </tag-name>
731
f62328124e5b Documented $upstream_cache_status and $upstream_response_length variables.
Vladimir Homutov <vl@nginx.com>
parents: 654
diff changeset
1109 <tag-desc>
f62328124e5b Documented $upstream_cache_status and $upstream_response_length variables.
Vladimir Homutov <vl@nginx.com>
parents: 654
diff changeset
1110 хранит статус доступа к кэшу ответов (0.8.3).
1075
6c021feec587 Removed unjustified non-breakable spaces.
Ruslan Ermilov <ru@nginx.com>
parents: 1016
diff changeset
1111 Статус может быть одним из “<literal>MISS</literal>”,
731
f62328124e5b Documented $upstream_cache_status and $upstream_response_length variables.
Vladimir Homutov <vl@nginx.com>
parents: 654
diff changeset
1112 “<literal>BYPASS</literal>”, “<literal>EXPIRED</literal>”,
1016
2d8269d8fea8 Translated documentation on cache revalidation into russian.
Vladimir Homutov <vl@nginx.com>
parents: 966
diff changeset
1113 “<literal>STALE</literal>”, “<literal>UPDATING</literal>”,
2d8269d8fea8 Translated documentation on cache revalidation into russian.
Vladimir Homutov <vl@nginx.com>
parents: 966
diff changeset
1114 “<literal>REVALIDATED</literal>” или “<literal>HIT</literal>”.
731
f62328124e5b Documented $upstream_cache_status and $upstream_response_length variables.
Vladimir Homutov <vl@nginx.com>
parents: 654
diff changeset
1115 </tag-desc>
f62328124e5b Documented $upstream_cache_status and $upstream_response_length variables.
Vladimir Homutov <vl@nginx.com>
parents: 654
diff changeset
1116
1391
0702cc081c63 Revised descriptions of upstream module variables.
Ruslan Ermilov <ru@nginx.com>
parents: 1386
diff changeset
1117 <tag-name id="var_upstream_cookie_"><var>$upstream_cookie_</var><value>имя</value>
0702cc081c63 Revised descriptions of upstream module variables.
Ruslan Ermilov <ru@nginx.com>
parents: 1386
diff changeset
1118 </tag-name>
1186
8125bec5c7a1 Upstream: documented the $upstream_cookie_* variables.
Ruslan Ermilov <ru@nginx.com>
parents: 1181
diff changeset
1119 <tag-desc>
8125bec5c7a1 Upstream: documented the $upstream_cookie_* variables.
Ruslan Ermilov <ru@nginx.com>
parents: 1181
diff changeset
1120 кука с указанным <value>именем</value>, переданная сервером группы
8125bec5c7a1 Upstream: documented the $upstream_cookie_* variables.
Ruslan Ermilov <ru@nginx.com>
parents: 1181
diff changeset
1121 в поле <header>Set-Cookie</header> заголовка ответа (1.7.1).
1391
0702cc081c63 Revised descriptions of upstream module variables.
Ruslan Ermilov <ru@nginx.com>
parents: 1386
diff changeset
1122 Необходимо иметь в виду, что куки запоминаются только из ответа
1186
8125bec5c7a1 Upstream: documented the $upstream_cookie_* variables.
Ruslan Ermilov <ru@nginx.com>
parents: 1181
diff changeset
1123 последнего сервера.
8125bec5c7a1 Upstream: documented the $upstream_cookie_* variables.
Ruslan Ermilov <ru@nginx.com>
parents: 1181
diff changeset
1124 </tag-desc>
8125bec5c7a1 Upstream: documented the $upstream_cookie_* variables.
Ruslan Ermilov <ru@nginx.com>
parents: 1181
diff changeset
1125
1393
15e8779f0ceb Documented the $upstream_header_time variable.
Ruslan Ermilov <ru@nginx.com>
parents: 1392
diff changeset
1126 <tag-name id="var_upstream_header_time"><var>$upstream_header_time</var>
15e8779f0ceb Documented the $upstream_header_time variable.
Ruslan Ermilov <ru@nginx.com>
parents: 1392
diff changeset
1127 </tag-name>
15e8779f0ceb Documented the $upstream_header_time variable.
Ruslan Ermilov <ru@nginx.com>
parents: 1392
diff changeset
1128 <tag-desc>
15e8779f0ceb Documented the $upstream_header_time variable.
Ruslan Ermilov <ru@nginx.com>
parents: 1392
diff changeset
1129 хранит время,
15e8779f0ceb Documented the $upstream_header_time variable.
Ruslan Ermilov <ru@nginx.com>
parents: 1392
diff changeset
1130 затраченное на получение заголовка ответа от сервера группы (1.7.10);
15e8779f0ceb Documented the $upstream_header_time variable.
Ruslan Ermilov <ru@nginx.com>
parents: 1392
diff changeset
1131 время хранится в секундах с точностью до миллисекунд.
15e8779f0ceb Documented the $upstream_header_time variable.
Ruslan Ermilov <ru@nginx.com>
parents: 1392
diff changeset
1132 Времена нескольких ответов
15e8779f0ceb Documented the $upstream_header_time variable.
Ruslan Ermilov <ru@nginx.com>
parents: 1392
diff changeset
1133 разделяются запятыми и двоеточиями подобно адресам в переменной
15e8779f0ceb Documented the $upstream_header_time variable.
Ruslan Ermilov <ru@nginx.com>
parents: 1392
diff changeset
1134 <link id="var_upstream_addr">$upstream_addr</link>.
15e8779f0ceb Documented the $upstream_header_time variable.
Ruslan Ermilov <ru@nginx.com>
parents: 1392
diff changeset
1135 </tag-desc>
15e8779f0ceb Documented the $upstream_header_time variable.
Ruslan Ermilov <ru@nginx.com>
parents: 1392
diff changeset
1136
1392
82e62822abe8 Sorted upstream module variables.
Ruslan Ermilov <ru@nginx.com>
parents: 1391
diff changeset
1137 <tag-name id="var_upstream_http_"><var>$upstream_http_</var><value>имя</value></tag-name>
82e62822abe8 Sorted upstream module variables.
Ruslan Ermilov <ru@nginx.com>
parents: 1391
diff changeset
1138 <tag-desc>
82e62822abe8 Sorted upstream module variables.
Ruslan Ermilov <ru@nginx.com>
parents: 1391
diff changeset
1139 хранят поля заголовка ответа сервера.
82e62822abe8 Sorted upstream module variables.
Ruslan Ermilov <ru@nginx.com>
parents: 1391
diff changeset
1140 Например, поле заголовка ответа <header>Server</header>
82e62822abe8 Sorted upstream module variables.
Ruslan Ermilov <ru@nginx.com>
parents: 1391
diff changeset
1141 доступно в переменной <var>$upstream_http_server</var>.
82e62822abe8 Sorted upstream module variables.
Ruslan Ermilov <ru@nginx.com>
parents: 1391
diff changeset
1142 Правила преобразования имён полей заголовка ответа в имена переменных
82e62822abe8 Sorted upstream module variables.
Ruslan Ermilov <ru@nginx.com>
parents: 1391
diff changeset
1143 такие же, как для переменных с префиксом
82e62822abe8 Sorted upstream module variables.
Ruslan Ermilov <ru@nginx.com>
parents: 1391
diff changeset
1144 “<link doc="ngx_http_core_module.xml" id="var_http_">$http_</link>”.
82e62822abe8 Sorted upstream module variables.
Ruslan Ermilov <ru@nginx.com>
parents: 1391
diff changeset
1145 Необходимо иметь в виду, что поля заголовка запоминаются только из ответа
82e62822abe8 Sorted upstream module variables.
Ruslan Ermilov <ru@nginx.com>
parents: 1391
diff changeset
1146 последнего сервера.
82e62822abe8 Sorted upstream module variables.
Ruslan Ermilov <ru@nginx.com>
parents: 1391
diff changeset
1147 </tag-desc>
82e62822abe8 Sorted upstream module variables.
Ruslan Ermilov <ru@nginx.com>
parents: 1391
diff changeset
1148
1155
07402a11fd8d Assigned IDs to tags describing variables.
Vladimir Homutov <vl@nginx.com>
parents: 1128
diff changeset
1149 <tag-name id="var_upstream_response_length"><var>$upstream_response_length</var>
07402a11fd8d Assigned IDs to tags describing variables.
Vladimir Homutov <vl@nginx.com>
parents: 1128
diff changeset
1150 </tag-name>
731
f62328124e5b Documented $upstream_cache_status and $upstream_response_length variables.
Vladimir Homutov <vl@nginx.com>
parents: 654
diff changeset
1151 <tag-desc>
1391
0702cc081c63 Revised descriptions of upstream module variables.
Ruslan Ermilov <ru@nginx.com>
parents: 1386
diff changeset
1152 хранит длину ответа, полученного от сервера группы (0.7.27);
0702cc081c63 Revised descriptions of upstream module variables.
Ruslan Ermilov <ru@nginx.com>
parents: 1386
diff changeset
1153 длина хранится в байтах.
0702cc081c63 Revised descriptions of upstream module variables.
Ruslan Ermilov <ru@nginx.com>
parents: 1386
diff changeset
1154 Длины нескольких ответов
0702cc081c63 Revised descriptions of upstream module variables.
Ruslan Ermilov <ru@nginx.com>
parents: 1386
diff changeset
1155 разделяются запятыми и двоеточиями подобно адресам в переменной
0702cc081c63 Revised descriptions of upstream module variables.
Ruslan Ermilov <ru@nginx.com>
parents: 1386
diff changeset
1156 <link id="var_upstream_addr">$upstream_addr</link>.
731
f62328124e5b Documented $upstream_cache_status and $upstream_response_length variables.
Vladimir Homutov <vl@nginx.com>
parents: 654
diff changeset
1157 </tag-desc>
f62328124e5b Documented $upstream_cache_status and $upstream_response_length variables.
Vladimir Homutov <vl@nginx.com>
parents: 654
diff changeset
1158
1155
07402a11fd8d Assigned IDs to tags describing variables.
Vladimir Homutov <vl@nginx.com>
parents: 1128
diff changeset
1159 <tag-name id="var_upstream_response_time"><var>$upstream_response_time</var>
07402a11fd8d Assigned IDs to tags describing variables.
Vladimir Homutov <vl@nginx.com>
parents: 1128
diff changeset
1160 </tag-name>
292
7bc830cc79bb Revision.
Ruslan Ermilov <ru@nginx.com>
parents: 280
diff changeset
1161 <tag-desc>
1391
0702cc081c63 Revised descriptions of upstream module variables.
Ruslan Ermilov <ru@nginx.com>
parents: 1386
diff changeset
1162 хранит время, затраченное на получение ответа от сервера группы;
0702cc081c63 Revised descriptions of upstream module variables.
Ruslan Ermilov <ru@nginx.com>
parents: 1386
diff changeset
1163 время хранится в секундах с точностью до миллисекунд.
0702cc081c63 Revised descriptions of upstream module variables.
Ruslan Ermilov <ru@nginx.com>
parents: 1386
diff changeset
1164 Времена нескольких ответов
0702cc081c63 Revised descriptions of upstream module variables.
Ruslan Ermilov <ru@nginx.com>
parents: 1386
diff changeset
1165 разделяются запятыми и двоеточиями подобно адресам в переменной
0702cc081c63 Revised descriptions of upstream module variables.
Ruslan Ermilov <ru@nginx.com>
parents: 1386
diff changeset
1166 <link id="var_upstream_addr">$upstream_addr</link>.
292
7bc830cc79bb Revision.
Ruslan Ermilov <ru@nginx.com>
parents: 280
diff changeset
1167 </tag-desc>
76
4a4caa566120 Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
1168
1155
07402a11fd8d Assigned IDs to tags describing variables.
Vladimir Homutov <vl@nginx.com>
parents: 1128
diff changeset
1169 <tag-name id="var_upstream_status"><var>$upstream_status</var></tag-name>
292
7bc830cc79bb Revision.
Ruslan Ermilov <ru@nginx.com>
parents: 280
diff changeset
1170 <tag-desc>
1391
0702cc081c63 Revised descriptions of upstream module variables.
Ruslan Ermilov <ru@nginx.com>
parents: 1386
diff changeset
1171 хранит статус ответа, полученного от сервера группы.
0702cc081c63 Revised descriptions of upstream module variables.
Ruslan Ermilov <ru@nginx.com>
parents: 1386
diff changeset
1172 Статусы нескольких ответов
0702cc081c63 Revised descriptions of upstream module variables.
Ruslan Ermilov <ru@nginx.com>
parents: 1386
diff changeset
1173 разделяются запятыми и двоеточиями подобно адресам в переменной
0702cc081c63 Revised descriptions of upstream module variables.
Ruslan Ermilov <ru@nginx.com>
parents: 1386
diff changeset
1174 <link id="var_upstream_addr">$upstream_addr</link>.
292
7bc830cc79bb Revision.
Ruslan Ermilov <ru@nginx.com>
parents: 280
diff changeset
1175 </tag-desc>
76
4a4caa566120 Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
1176
4a4caa566120 Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
1177 </list>
4a4caa566120 Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
1178 </para>
4a4caa566120 Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
1179
4a4caa566120 Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
1180 </section>
4a4caa566120 Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
1181
4a4caa566120 Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff changeset
1182 </module>