comparison xml/ru/docs/http/ngx_http_core_module.xml @ 271:4c6d2c614d2c

Cleaned up XML tag mess: - all of <parameter> and <code>, and some of <dirname>, <value>, and <command> were replaced by <literal>; - the rest of <dirname> were replaced by links; - <argument> were replaced by <value>; - <value> is now rendered in HTML in italic; - <literal> and <path> can now contain <value>. Cleaned up terminology mess: - directives take "parameters".
author Ruslan Ermilov <ru@nginx.com>
date Fri, 23 Dec 2011 17:29:59 +0000
parents 945d7299c26c
children 457c54242cfa
comparison
equal deleted inserted replaced
270:945d7299c26c 271:4c6d2c614d2c
8 8
9 <section id="directives" name="Директивы"> 9 <section id="directives" name="Директивы">
10 10
11 <directive name="aio"> 11 <directive name="aio">
12 <syntax> 12 <syntax>
13 <value>on</value> | 13 <literal>on</literal> |
14 <value>off</value> | 14 <literal>off</literal> |
15 <value>sendfile</value></syntax> 15 <literal>sendfile</literal></syntax>
16 <default>off</default> 16 <default>off</default>
17 <context>http</context> 17 <context>http</context>
18 <context>server</context> 18 <context>server</context>
19 <context>location</context> 19 <context>location</context>
20 <appeared-in>0.8.11</appeared-in> 20 <appeared-in>0.8.11</appeared-in>
128 128
129 </directive> 129 </directive>
130 130
131 131
132 <directive name="alias"> 132 <directive name="alias">
133 <syntax><argument>путь</argument></syntax> 133 <syntax><value>путь</value></syntax>
134 <default/> 134 <default/>
135 <context>location</context> 135 <context>location</context>
136 136
137 <para> 137 <para>
138 Задаёт замену для указанного location'а. 138 Задаёт замену для указанного location'а.
141 location /i/ { 141 location /i/ {
142 alias /data/w3/images/; 142 alias /data/w3/images/;
143 } 143 }
144 </example> 144 </example>
145 на запрос 145 на запрос
146 “<code>/i/top.gif</code>” будет отдан файл 146 “<literal>/i/top.gif</literal>” будет отдан файл
147 <path>/data/w3/images/top.gif</path>. 147 <path>/data/w3/images/top.gif</path>.
148 </para> 148 </para>
149 149
150 <para> 150 <para>
151 В значении аргумента <argument>путь</argument> можно использовать переменные, 151 В значении параметра <value>путь</value> можно использовать переменные,
152 кроме <var>$document_root</var> и <var>$realpath_root</var>. 152 кроме <var>$document_root</var> и <var>$realpath_root</var>.
153 </para> 153 </para>
154 154
155 <para> 155 <para>
156 Если <code>alias</code> используется внутри location'а, заданного 156 Если <literal>alias</literal> используется внутри location'а, заданного
157 регулярным выражением, то регулярное выражение должно содержать 157 регулярным выражением, то регулярное выражение должно содержать
158 выделения, а сам <code>alias</code> — ссылки на эти выделения 158 выделения, а сам <literal>alias</literal> — ссылки на эти выделения
159 (0.7.40), например: 159 (0.7.40), например:
160 <example> 160 <example>
161 location ~ ^/users/(.+\.(?:gif|jpe?g|png))$ { 161 location ~ ^/users/(.+\.(?:gif|jpe?g|png))$ {
162 alias /data/w3/images/$1; 162 alias /data/w3/images/$1;
163 } 163 }
182 182
183 </directive> 183 </directive>
184 184
185 185
186 <directive name="chunked_transfer_encoding"> 186 <directive name="chunked_transfer_encoding">
187 <syntax><value>on</value> | <value>off</value></syntax> 187 <syntax><literal>on</literal> | <literal>off</literal></syntax>
188 <default>on</default> 188 <default>on</default>
189 <context>http</context> 189 <context>http</context>
190 <context>server</context> 190 <context>server</context>
191 <context>location</context> 191 <context>location</context>
192 192
200 </directive> 200 </directive>
201 201
202 202
203 <directive name="client_body_buffer_size"> 203 <directive name="client_body_buffer_size">
204 204
205 <syntax><argument>размер</argument></syntax> 205 <syntax><value>размер</value></syntax>
206 <default>8k|16k</default> 206 <default>8k|16k</default>
207 <context>http</context> 207 <context>http</context>
208 <context>server</context> 208 <context>server</context>
209 <context>location</context> 209 <context>location</context>
210 210
221 </directive> 221 </directive>
222 222
223 223
224 <directive name="client_body_in_file_only"> 224 <directive name="client_body_in_file_only">
225 <syntax> 225 <syntax>
226 <value>on</value> | 226 <literal>on</literal> |
227 <value>clean</value> | 227 <literal>clean</literal> |
228 <value>off</value></syntax> 228 <literal>off</literal></syntax>
229 <default>off</default> 229 <default>off</default>
230 <context>http</context> 230 <context>http</context>
231 <context>server</context> 231 <context>server</context>
232 <context>location</context> 232 <context>location</context>
233 233
240 модуля 240 модуля
241 <link doc="ngx_http_perl_module.xml">ngx_http_perl_module</link>. 241 <link doc="ngx_http_perl_module.xml">ngx_http_perl_module</link>.
242 </para> 242 </para>
243 243
244 <para> 244 <para>
245 При установке значения <value>on</value> временные файлы 245 При установке значения <literal>on</literal> временные файлы
246 по окончании обработки запроса не удаляются. 246 по окончании обработки запроса не удаляются.
247 </para> 247 </para>
248 248
249 <para> 249 <para>
250 Значение <value>clean</value> разрешает удалять временные файлы, 250 Значение <literal>clean</literal> разрешает удалять временные файлы,
251 оставшиеся по окончании обработки запроса. 251 оставшиеся по окончании обработки запроса.
252 </para> 252 </para>
253 253
254 </directive> 254 </directive>
255 255
256 256
257 <directive name="client_body_in_single_buffer"> 257 <directive name="client_body_in_single_buffer">
258 <syntax><value>on</value> | <value>off</value></syntax> 258 <syntax><literal>on</literal> | <literal>off</literal></syntax>
259 <default>off</default> 259 <default>off</default>
260 <context>http</context> 260 <context>http</context>
261 <context>server</context> 261 <context>server</context>
262 <context>location</context> 262 <context>location</context>
263 263
271 </directive> 271 </directive>
272 272
273 273
274 <directive name="client_body_temp_path"> 274 <directive name="client_body_temp_path">
275 <syntax> 275 <syntax>
276 <argument>путь</argument> 276 <value>путь</value>
277 [<argument>уровень1</argument> 277 [<value>уровень1</value>
278 [<argument>уровень2</argument> 278 [<value>уровень2</value>
279 [<argument>уровень3</argument>]]]</syntax> 279 [<value>уровень3</value>]]]</syntax>
280 <default>client_body_temp</default> 280 <default>client_body_temp</default>
281 <context>http</context> 281 <context>http</context>
282 <context>server</context> 282 <context>server</context>
283 <context>location</context> 283 <context>location</context>
284 284
297 297
298 </directive> 298 </directive>
299 299
300 300
301 <directive name="client_body_timeout"> 301 <directive name="client_body_timeout">
302 <syntax><argument>время</argument></syntax> 302 <syntax><value>время</value></syntax>
303 <default>60s</default> 303 <default>60s</default>
304 <context>http</context> 304 <context>http</context>
305 <context>server</context> 305 <context>server</context>
306 <context>location</context> 306 <context>location</context>
307 307
316 316
317 </directive> 317 </directive>
318 318
319 319
320 <directive name="client_header_buffer_size"> 320 <directive name="client_header_buffer_size">
321 <syntax><argument>размер</argument></syntax> 321 <syntax><value>размер</value></syntax>
322 <default>1k</default> 322 <default>1k</default>
323 <context>http</context> 323 <context>http</context>
324 <context>server</context> 324 <context>server</context>
325 325
326 <para> 326 <para>
336 336
337 </directive> 337 </directive>
338 338
339 339
340 <directive name="client_header_timeout"> 340 <directive name="client_header_timeout">
341 <syntax><argument>время</argument></syntax> 341 <syntax><value>время</value></syntax>
342 <default>60s</default> 342 <default>60s</default>
343 <context>http</context> 343 <context>http</context>
344 <context>server</context> 344 <context>server</context>
345 345
346 <para> 346 <para>
352 352
353 </directive> 353 </directive>
354 354
355 355
356 <directive name="client_max_body_size"> 356 <directive name="client_max_body_size">
357 <syntax><argument>размер</argument></syntax> 357 <syntax><value>размер</value></syntax>
358 <default>1m</default> 358 <default>1m</default>
359 <context>http</context> 359 <context>http</context>
360 <context>server</context> 360 <context>server</context>
361 <context>location</context> 361 <context>location</context>
362 362
368 Если размер больше заданного, то клиенту возвращается ошибка 368 Если размер больше заданного, то клиенту возвращается ошибка
369 <http-status code="413" text="Request Entity Too Large"/>. 369 <http-status code="413" text="Request Entity Too Large"/>.
370 Следует иметь в виду, что 370 Следует иметь в виду, что
371 <!--link doc="/web/upload.xml"-->браузеры не умеют корректно показывать 371 <!--link doc="/web/upload.xml"-->браузеры не умеют корректно показывать
372 эту ошибку<!--/link-->. 372 эту ошибку<!--/link-->.
373 Установка аргумента <argument>размер</argument> в 0 отключает 373 Установка параметра <value>размер</value> в 0 отключает
374 проверку размера тела запроса клиента. 374 проверку размера тела запроса клиента.
375 </para> 375 </para>
376 376
377 </directive> 377 </directive>
378 378
379 379
380 <directive name="connection_pool_size"> 380 <directive name="connection_pool_size">
381 <syntax><argument>размер</argument></syntax> 381 <syntax><value>размер</value></syntax>
382 <default>256</default> 382 <default>256</default>
383 <context>http</context> 383 <context>http</context>
384 <context>server</context> 384 <context>server</context>
385 385
386 <para> 386 <para>
392 392
393 </directive> 393 </directive>
394 394
395 395
396 <directive name="default_type"> 396 <directive name="default_type">
397 <syntax><argument>mime-тип</argument></syntax> 397 <syntax><value>mime-тип</value></syntax>
398 <default>text/plain</default> 398 <default>text/plain</default>
399 <context>http</context> 399 <context>http</context>
400 <context>server</context> 400 <context>server</context>
401 <context>location</context> 401 <context>location</context>
402 402
407 407
408 </directive> 408 </directive>
409 409
410 410
411 <directive name="directio"> 411 <directive name="directio">
412 <syntax><argument>размер</argument> | <value>off</value></syntax> 412 <syntax><value>размер</value> | <literal>off</literal></syntax>
413 <default>off</default> 413 <default>off</default>
414 <context>http</context> 414 <context>http</context>
415 <context>server</context> 415 <context>server</context>
416 <context>location</context> 416 <context>location</context>
417 <appeared-in>0.7.7</appeared-in> 417 <appeared-in>0.7.7</appeared-in>
434 434
435 </directive> 435 </directive>
436 436
437 437
438 <directive name="directio_alignment"> 438 <directive name="directio_alignment">
439 <syntax><argument>размер</argument></syntax> 439 <syntax><value>размер</value></syntax>
440 <default>512</default> 440 <default>512</default>
441 <context>http</context> 441 <context>http</context>
442 <context>server</context> 442 <context>server</context>
443 <context>location</context> 443 <context>location</context>
444 <appeared-in>0.8.11</appeared-in> 444 <appeared-in>0.8.11</appeared-in>
453 </directive> 453 </directive>
454 454
455 455
456 <directive name="error_page"> 456 <directive name="error_page">
457 <syntax> 457 <syntax>
458 <argument>код</argument> ... 458 <value>код</value> ...
459 [<value>=</value>[<argument>ответ</argument>]] 459 [<literal>=</literal>[<value>ответ</value>]]
460 <argument>uri</argument></syntax> 460 <value>uri</value></syntax>
461 <default/> 461 <default/>
462 <context>http</context> 462 <context>http</context>
463 <context>server</context> 463 <context>server</context>
464 <context>location</context> 464 <context>location</context>
465 <context>if в location</context> 465 <context>if в location</context>
466 466
467 <para> 467 <para>
468 Задаёт URI, который будет показываться для указанных ошибок. 468 Задаёт URI, который будет показываться для указанных ошибок.
469 Директивы <code>error_page</code> наследуются с предыдущего уровня при условии, 469 Директивы <literal>error_page</literal> наследуются с предыдущего уровня
470 что на данном уровне не описаны свои директивы 470 при условии, что на данном уровне не описаны свои директивы
471 <code>error_page</code>. 471 <literal>error_page</literal>.
472 В значении URI можно использовать переменные. 472 В значении URI можно использовать переменные.
473 </para> 473 </para>
474 474
475 <para> 475 <para>
476 Пример: 476 Пример:
514 </directive> 514 </directive>
515 515
516 516
517 <directive name="if_modified_since"> 517 <directive name="if_modified_since">
518 <syntax> 518 <syntax>
519 <value>off</value> | 519 <literal>off</literal> |
520 <value>exact</value> | 520 <literal>exact</literal> |
521 <value>before</value></syntax> 521 <literal>before</literal></syntax>
522 <default>exact</default> 522 <default>exact</default>
523 <context>http</context> 523 <context>http</context>
524 <context>server</context> 524 <context>server</context>
525 <context>location</context> 525 <context>location</context>
526 <appeared-in>0.7.24</appeared-in> 526 <appeared-in>0.7.24</appeared-in>
531 <header>If-Modified-Since</header> 531 <header>If-Modified-Since</header>
532 заголовка запроса: 532 заголовка запроса:
533 533
534 <list type="tag"> 534 <list type="tag">
535 535
536 <tag-name><value>off</value></tag-name> 536 <tag-name><literal>off</literal></tag-name>
537 <tag-desc> 537 <tag-desc>
538 не проверять поле 538 не проверять поле
539 <header>If-Modified-Since</header> заголовка запроса (0.7.34); 539 <header>If-Modified-Since</header> заголовка запроса (0.7.34);
540 </tag-desc> 540 </tag-desc>
541 541
542 <tag-name><value>exact</value></tag-name> 542 <tag-name><literal>exact</literal></tag-name>
543 <tag-desc> 543 <tag-desc>
544 точное совпадение; 544 точное совпадение;
545 </tag-desc> 545 </tag-desc>
546 546
547 <tag-name><value>before</value></tag-name> 547 <tag-name><literal>before</literal></tag-name>
548 <tag-desc> 548 <tag-desc>
549 время модификации ответа меньше или равно времени, заданному в поле 549 время модификации ответа меньше или равно времени, заданному в поле
550 <header>If-Modified-Since</header> заголовка запроса. 550 <header>If-Modified-Since</header> заголовка запроса.
551 </tag-desc> 551 </tag-desc>
552 552
555 555
556 </directive> 556 </directive>
557 557
558 558
559 <directive name="ignore_invalid_headers"> 559 <directive name="ignore_invalid_headers">
560 <syntax><value>on</value> | <value>off</value></syntax> 560 <syntax><literal>on</literal> | <literal>off</literal></syntax>
561 <default>on</default> 561 <default>on</default>
562 <context>http</context> 562 <context>http</context>
563 <context>server</context> 563 <context>server</context>
564 564
565 <para> 565 <para>
589 запросы, перенаправленные директивой <link id="error_page"/>; 589 запросы, перенаправленные директивой <link id="error_page"/>;
590 </listitem> 590 </listitem>
591 591
592 <listitem> 592 <listitem>
593 подзапросы, формируемые командой 593 подзапросы, формируемые командой
594 <command>include virtual</command> 594 “<command>include virtual</command>”
595 модуля 595 модуля
596 <link doc="ngx_http_ssi_module.xml">ngx_http_ssi_module</link>; 596 <link doc="ngx_http_ssi_module.xml">ngx_http_ssi_module</link>;
597 ngx_http_ssi_module; 597 ngx_http_ssi_module;
598 </listitem> 598 </listitem>
599 599
618 618
619 </directive> 619 </directive>
620 620
621 621
622 <directive name="keepalive_disable"> 622 <directive name="keepalive_disable">
623 <syntax><value>none</value> | <argument>браузер</argument> ...</syntax> 623 <syntax><literal>none</literal> | <value>браузер</value> ...</syntax>
624 <default>msie6 safari</default> 624 <default>msie6 safari</default>
625 <context>http</context> 625 <context>http</context>
626 <context>server</context> 626 <context>server</context>
627 <context>location</context> 627 <context>location</context>
628 628
629 <para> 629 <para>
630 Запрещает keep-alive соединения с некорректно ведущими себя браузерами. 630 Запрещает keep-alive соединения с некорректно ведущими себя браузерами.
631 Аргументы <argument>браузер</argument> указывают, на какие браузеры это 631 Параметры <value>браузер</value> указывают, на какие браузеры это
632 распространяется. 632 распространяется.
633 Значение <value>msie6</value> запрещает keep-alive соединения 633 Значение <literal>msie6</literal> запрещает keep-alive соединения
634 со старыми версиями MSIE после получения запроса POST. 634 со старыми версиями MSIE после получения запроса POST.
635 Значение <value>safari</value> запрещает keep-alive соединения 635 Значение <literal>safari</literal> запрещает keep-alive соединения
636 с браузерами Safari. 636 с браузерами Safari.
637 Значение <value>none</value> разрешает keep-alive соединения 637 Значение <literal>none</literal> разрешает keep-alive соединения
638 со всеми браузерами. 638 со всеми браузерами.
639 </para> 639 </para>
640 640
641 </directive> 641 </directive>
642 642
643 643
644 <directive name="keepalive_requests"> 644 <directive name="keepalive_requests">
645 <syntax><argument>число</argument></syntax> 645 <syntax><value>число</value></syntax>
646 <default>100</default> 646 <default>100</default>
647 <context>http</context> 647 <context>http</context>
648 <context>server</context> 648 <context>server</context>
649 <context>location</context> 649 <context>location</context>
650 <appeared-in>0.8.0</appeared-in> 650 <appeared-in>0.8.0</appeared-in>
659 </directive> 659 </directive>
660 660
661 661
662 <directive name="keepalive_timeout"> 662 <directive name="keepalive_timeout">
663 <syntax> 663 <syntax>
664 <argument>таймаут</argument> 664 <value>таймаут</value>
665 [<argument>заголовок_таймаута</argument>]</syntax> 665 [<value>заголовок_таймаута</value>]</syntax>
666 <default>75s</default> 666 <default>75s</default>
667 <context>http</context> 667 <context>http</context>
668 <context>server</context> 668 <context>server</context>
669 <context>location</context> 669 <context>location</context>
670 670
671 <para> 671 <para>
672 Первый аргумент задаёт таймаут, в течение которого keep-alive 672 Первый параметр задаёт таймаут, в течение которого keep-alive
673 соединение с клиентом не будет закрыто со стороны сервера. 673 соединение с клиентом не будет закрыто со стороны сервера.
674 Второй необязательный параметр задаёт значение в поле 674 Второй необязательный параметр задаёт значение в поле
675 <header>Keep-Alive: timeout=<argument>время</argument></header> 675 <header>Keep-Alive: timeout=<value>время</value></header>
676 заголовка ответа. 676 заголовка ответа.
677 Два аргумента могут отличаться друг от друга. 677 Два параметра могут отличаться друг от друга.
678 </para> 678 </para>
679 679
680 <para> 680 <para>
681 Поле 681 Поле
682 <header>Keep-Alive: timeout=<argument>время</argument></header> 682 <header>Keep-Alive: timeout=<value>время</value></header>
683 заголовка понимают Mozilla и Konqueror. 683 заголовка понимают Mozilla и Konqueror.
684 MSIE сам закрывает keep-alive соединение примерно через 60 секунд. 684 MSIE сам закрывает keep-alive соединение примерно через 60 секунд.
685 </para> 685 </para>
686 686
687 </directive> 687 </directive>
688 688
689 689
690 <directive name="large_client_header_buffers"> 690 <directive name="large_client_header_buffers">
691 <syntax><argument>число</argument> <argument>размер</argument></syntax> 691 <syntax><value>число</value> <value>размер</value></syntax>
692 <default>4 8k</default> 692 <default>4 8k</default>
693 <context>http</context> 693 <context>http</context>
694 <context>server</context> 694 <context>server</context>
695 695
696 <para> 696 <para>
697 Задаёт максимальное <argument>число</argument> и <argument>размер</argument> 697 Задаёт максимальное <value>число</value> и <value>размер</value>
698 буферов для чтения большого заголовка запроса клиента. 698 буферов для чтения большого заголовка запроса клиента.
699 Строка запроса не должна превышать размера одного буфера, иначе клиенту 699 Строка запроса не должна превышать размера одного буфера, иначе клиенту
700 возвращается ошибка 700 возвращается ошибка
701 <http-status code="414" text="Request-URI Too Large"/>. 701 <http-status code="414" text="Request-URI Too Large"/>.
702 Поле заголовка запроса также не должно превышать размера одного буфера, 702 Поле заголовка запроса также не должно превышать размера одного буфера,
710 710
711 </directive> 711 </directive>
712 712
713 713
714 <directive name="limit_except"> 714 <directive name="limit_except">
715 <syntax block="yes"><argument>метод</argument> ...</syntax> 715 <syntax block="yes"><value>метод</value> ...</syntax>
716 <default/> 716 <default/>
717 <context>location</context> 717 <context>location</context>
718 718
719 <para> 719 <para>
720 Ограничивает HTTP-методы, доступные внутри location. 720 Ограничивает HTTP-методы, доступные внутри location.
721 Аргумент <argument>метод</argument> может быть одним из 721 Параметр <value>метод</value> может быть одним из
722 <value>GET</value>, 722 <literal>GET</literal>,
723 <value>HEAD</value>, 723 <literal>HEAD</literal>,
724 <value>POST</value>, 724 <literal>POST</literal>,
725 <value>PUT</value>, 725 <literal>PUT</literal>,
726 <value>DELETE</value>, 726 <literal>DELETE</literal>,
727 <value>MKCOL</value>, 727 <literal>MKCOL</literal>,
728 <value>COPY</value>, 728 <literal>COPY</literal>,
729 <value>MOVE</value>, 729 <literal>MOVE</literal>,
730 <value>OPTIONS</value>, 730 <literal>OPTIONS</literal>,
731 <value>PROPFIND</value>, 731 <literal>PROPFIND</literal>,
732 <value>PROPPATCH</value>, 732 <literal>PROPPATCH</literal>,
733 <value>LOCK</value>, 733 <literal>LOCK</literal>,
734 <value>UNLOCK</value> 734 <literal>UNLOCK</literal>
735 или 735 или
736 <value>PATCH</value>. 736 <literal>PATCH</literal>.
737 Если разрешён метод <value>GET</value>, то метод 737 Если разрешён метод <literal>GET</literal>, то метод
738 <value>HEAD</value> также будет разрешён. 738 <literal>HEAD</literal> также будет разрешён.
739 Доступ к остальным методам может быть ограничен при помощи директив модулей 739 Доступ к остальным методам может быть ограничен при помощи директив модулей
740 <link doc="ngx_http_access_module.xml">ngx_http_access_module</link> 740 <link doc="ngx_http_access_module.xml">ngx_http_access_module</link>
741 и 741 и
742 <link doc="ngx_http_auth_basic_module.xml">ngx_http_auth_basic_module</link>: 742 <link doc="ngx_http_auth_basic_module.xml">ngx_http_auth_basic_module</link>:
743 <example> 743 <example>
752 752
753 </directive> 753 </directive>
754 754
755 755
756 <directive name="limit_rate"> 756 <directive name="limit_rate">
757 <syntax><argument>скорость</argument></syntax> 757 <syntax><value>скорость</value></syntax>
758 <default>0</default> 758 <default>0</default>
759 <context>http</context> 759 <context>http</context>
760 <context>server</context> 760 <context>server</context>
761 <context>location</context> 761 <context>location</context>
762 <context>if в location</context> 762 <context>if в location</context>
773 выше заданного ограничения. 773 выше заданного ограничения.
774 </para> 774 </para>
775 775
776 <para> 776 <para>
777 Если необходимо ограничить скорость для части клиентов на уровне 777 Если необходимо ограничить скорость для части клиентов на уровне
778 <link id="server">сервера</link>, то директива <code>limit_rate</code> 778 <link id="server">сервера</link>, то директива <literal>limit_rate</literal>
779 для этого не подходит. 779 для этого не подходит.
780 Вместо этого следует задать желаемое ограничение скорости в переменной 780 Вместо этого следует задать желаемое ограничение скорости в переменной
781 <var>$limit_rate</var>: 781 <var>$limit_rate</var>:
782 <example> 782 <example>
783 server { 783 server {
793 793
794 </directive> 794 </directive>
795 795
796 796
797 <directive name="limit_rate_after"> 797 <directive name="limit_rate_after">
798 <syntax><argument>размер</argument></syntax> 798 <syntax><value>размер</value></syntax>
799 <default>0</default> 799 <default>0</default>
800 <context>http</context> 800 <context>http</context>
801 <context>server</context> 801 <context>server</context>
802 <context>location</context> 802 <context>location</context>
803 <context>if в location</context> 803 <context>if в location</context>
821 821
822 </directive> 822 </directive>
823 823
824 824
825 <directive name="lingering_close"> 825 <directive name="lingering_close">
826 <syntax><value>off</value> | <value>on</value> | <value>always</value></syntax> 826 <syntax>
827 <literal>off</literal> |
828 <literal>on</literal> |
829 <literal>always</literal></syntax>
827 <default>on</default> 830 <default>on</default>
828 <context>http</context> 831 <context>http</context>
829 <context>server</context> 832 <context>server</context>
830 <context>location</context> 833 <context>location</context>
831 <appeared-in>1.1.0</appeared-in> 834 <appeared-in>1.1.0</appeared-in>
834 <para> 837 <para>
835 Управляет закрытием соединений с клиентами. 838 Управляет закрытием соединений с клиентами.
836 </para> 839 </para>
837 840
838 <para> 841 <para>
839 Со значение по умолчанию “<value>on</value>” nginx будет 842 Со значением по умолчанию “<literal>on</literal>” nginx будет
840 <link id="lingering_timeout">ждать</link> и 843 <link id="lingering_timeout">ждать</link> и
841 <link id="lingering_time">обрабатывать</link> дополнительные данные, 844 <link id="lingering_time">обрабатывать</link> дополнительные данные,
842 поступающие от клиента, перед полным закрытием соединения, но только 845 поступающие от клиента, перед полным закрытием соединения, но только
843 если эвристика указывает на то, что клиент может ещё послать данные. 846 если эвристика указывает на то, что клиент может ещё послать данные.
844 </para> 847 </para>
845 848
846 <para> 849 <para>
847 Со значением “<value>always</value>” nginx всегда будет 850 Со значением “<literal>always</literal>” nginx всегда будет
848 ждать и обрабатывать дополнительные данные, поступающие от клиента. 851 ждать и обрабатывать дополнительные данные, поступающие от клиента.
849 </para> 852 </para>
850 853
851 <para> 854 <para>
852 Со значением “<value>off</value>” nginx не будет ждать поступления 855 Со значением “<literal>off</literal>” nginx не будет ждать поступления
853 дополнительных данных и сразу же закроет соединение. 856 дополнительных данных и сразу же закроет соединение.
854 Это нарушает протокол, поэтому не следует это использовать без нужды. 857 Это нарушает протокол, поэтому не следует это использовать без нужды.
855 </para> 858 </para>
856 859
857 </directive> 860 </directive>
858 861
859 862
860 <directive name="lingering_time"> 863 <directive name="lingering_time">
861 <syntax><argument>время</argument></syntax> 864 <syntax><value>время</value></syntax>
862 <default>30s</default> 865 <default>30s</default>
863 <context>http</context> 866 <context>http</context>
864 <context>server</context> 867 <context>server</context>
865 <context>location</context> 868 <context>location</context>
866 869
875 878
876 </directive> 879 </directive>
877 880
878 881
879 <directive name="lingering_timeout"> 882 <directive name="lingering_timeout">
880 <syntax><argument>время</argument></syntax> 883 <syntax><value>время</value></syntax>
881 <default>5s</default> 884 <default>5s</default>
882 <context>http</context> 885 <context>http</context>
883 <context>server</context> 886 <context>server</context>
884 <context>location</context> 887 <context>location</context>
885 888
895 </directive> 898 </directive>
896 899
897 900
898 <directive name="listen"> 901 <directive name="listen">
899 <syntax> 902 <syntax>
900 <argument>адрес</argument>[:<argument>порт</argument>] 903 <value>адрес</value>[:<value>порт</value>]
901 [<parameter>default_server</parameter>] 904 [<literal>default_server</literal>]
902 [<parameter>setfib</parameter>=<argument>число</argument>] 905 [<literal>setfib</literal>=<value>число</value>]
903 [<parameter>backlog</parameter>=<argument>число</argument>] 906 [<literal>backlog</literal>=<value>число</value>]
904 [<parameter>rcvbuf</parameter>=<argument>размер</argument>] 907 [<literal>rcvbuf</literal>=<value>размер</value>]
905 [<parameter>sndbuf</parameter>=<argument>размер</argument>] 908 [<literal>sndbuf</literal>=<value>размер</value>]
906 [<parameter>accept_filter</parameter>=<argument>фильтр</argument>] 909 [<literal>accept_filter</literal>=<value>фильтр</value>]
907 [<parameter>deferred</parameter>] 910 [<literal>deferred</literal>]
908 [<parameter>bind</parameter>] 911 [<literal>bind</literal>]
909 [<parameter>ipv6only</parameter>=<value>on</value>|<value>off</value>] 912 [<literal>ipv6only</literal>=<literal>on</literal>|<literal>off</literal>]
910 [<parameter>ssl</parameter>] 913 [<literal>ssl</literal>]
911 [<parameter>so_keepalive</parameter>=<value>on</value>|<value>off</value>|[<argument>keepidle</argument>]:[<argument>keepintvl</argument>]:[<argument>keepcnt</argument>]]</syntax> 914 [<literal>so_keepalive</literal>=<literal>on</literal>|<literal>off</literal>|[<value>keepidle</value>]:[<value>keepintvl</value>]:[<value>keepcnt</value>]]</syntax>
912 <syntax> 915 <syntax>
913 <argument>порт</argument> 916 <value>порт</value>
914 [<parameter>default_server</parameter>] 917 [<literal>default_server</literal>]
915 [<parameter>setfib</parameter>=<argument>число</argument>] 918 [<literal>setfib</literal>=<value>число</value>]
916 [<parameter>backlog</parameter>=<argument>число</argument>] 919 [<literal>backlog</literal>=<value>число</value>]
917 [<parameter>rcvbuf</parameter>=<argument>размер</argument>] 920 [<literal>rcvbuf</literal>=<value>размер</value>]
918 [<parameter>sndbuf</parameter>=<argument>размер</argument>] 921 [<literal>sndbuf</literal>=<value>размер</value>]
919 [<parameter>accept_filter</parameter>=<argument>фильтр</argument>] 922 [<literal>accept_filter</literal>=<value>фильтр</value>]
920 [<parameter>deferred</parameter>] 923 [<literal>deferred</literal>]
921 [<parameter>bind</parameter>] 924 [<literal>bind</literal>]
922 [<parameter>ipv6only</parameter>=<value>on</value>|<value>off</value>] 925 [<literal>ipv6only</literal>=<literal>on</literal>|<literal>off</literal>]
923 [<parameter>ssl</parameter>] 926 [<literal>ssl</literal>]
924 [<parameter>so_keepalive</parameter>=<value>on</value>|<value>off</value>|[<argument>keepidle</argument>]:[<argument>keepintvl</argument>]:[<argument>keepcnt</argument>]]</syntax> 927 [<literal>so_keepalive</literal>=<literal>on</literal>|<literal>off</literal>|[<value>keepidle</value>]:[<value>keepintvl</value>]:[<value>keepcnt</value>]]</syntax>
925 <syntax> 928 <syntax>
926 <value>unix:</value><argument>путь</argument> 929 <literal>unix:</literal><value>путь</value>
927 [<parameter>default_server</parameter>] 930 [<literal>default_server</literal>]
928 [<parameter>backlog</parameter>=<argument>число</argument>] 931 [<literal>backlog</literal>=<value>число</value>]
929 [<parameter>rcvbuf</parameter>=<argument>размер</argument>] 932 [<literal>rcvbuf</literal>=<value>размер</value>]
930 [<parameter>sndbuf</parameter>=<argument>размер</argument>] 933 [<literal>sndbuf</literal>=<value>размер</value>]
931 [<parameter>accept_filter</parameter>=<argument>фильтр</argument>] 934 [<literal>accept_filter</literal>=<value>фильтр</value>]
932 [<parameter>deferred</parameter>] 935 [<literal>deferred</literal>]
933 [<parameter>bind</parameter>] 936 [<literal>bind</literal>]
934 [<parameter>ssl</parameter>] 937 [<literal>ssl</literal>]
935 [<parameter>so_keepalive</parameter>=<value>on</value>|<value>off</value>|[<argument>keepidle</argument>]:[<argument>keepintvl</argument>]:[<argument>keepcnt</argument>]]</syntax> 938 [<literal>so_keepalive</literal>=<literal>on</literal>|<literal>off</literal>|[<value>keepidle</value>]:[<value>keepintvl</value>]:[<value>keepcnt</value>]]</syntax>
936 <default>*:80 | *:8000</default> 939 <default>*:80 | *:8000</default>
937 <context>server</context> 940 <context>server</context>
938 941
939 <para> 942 <para>
940 Задаёт <argument>адрес</argument> и <argument>порт</argument> для IP 943 Задаёт <value>адрес</value> и <value>порт</value> для IP
941 или <argument>путь</argument> для UNIX-сокета, 944 или <value>путь</value> для UNIX-сокета,
942 на которых сервер будет принимать запросы. 945 на которых сервер будет принимать запросы.
943 Можно указать только <argument>адрес</argument> 946 Можно указать только <value>адрес</value>
944 или только <argument>порт</argument>. 947 или только <value>порт</value>.
945 Кроме того, <argument>адрес</argument> может быть именем хоста, например: 948 Кроме того, <value>адрес</value> может быть именем хоста, например:
946 <example> 949 <example>
947 listen 127.0.0.1:8000; 950 listen 127.0.0.1:8000;
948 listen 127.0.0.1; 951 listen 127.0.0.1;
949 listen 8000; 952 listen 8000;
950 listen *:8000; 953 listen *:8000;
953 IPv6-адреса (0.7.36) задаются в квадратных скобках: 956 IPv6-адреса (0.7.36) задаются в квадратных скобках:
954 <example> 957 <example>
955 listen [::]:8000; 958 listen [::]:8000;
956 listen [fe80::1]; 959 listen [fe80::1];
957 </example> 960 </example>
958 UNIX-сокеты (0.8.21) задаются при помощи префикса “<code>unix:</code>”: 961 UNIX-сокеты (0.8.21) задаются при помощи префикса “<literal>unix:</literal>”:
959 <example> 962 <example>
960 listen unix:/var/run/nginx.sock; 963 listen unix:/var/run/nginx.sock;
961 </example> 964 </example>
962 </para> 965 </para>
963 966
964 <para> 967 <para>
965 Если указан только <argument>адрес</argument>, то используется порт 80. 968 Если указан только <value>адрес</value>, то используется порт 80.
966 </para> 969 </para>
967 970
968 <para> 971 <para>
969 Если директива не указана, то используется либо <code>*:80</code> 972 Если директива не указана, то используется либо <literal>*:80</literal>
970 (если nginx работает с привилегиями суперпользователя), 973 (если nginx работает с привилегиями суперпользователя),
971 либо <code>*:8000</code>. 974 либо <literal>*:8000</literal>.
972 </para> 975 </para>
973 976
974 <para> 977 <para>
975 Если у директивы есть параметр <parameter>default_server</parameter>, то сервер, 978 Если у директивы есть параметр <literal>default_server</literal>, то сервер,
976 в котором описана эта директива, будет сервером по умолчанию для указанной пары 979 в котором описана эта директива, будет сервером по умолчанию для указанной пары
977 <argument>адрес</argument>:<argument>порт</argument>. 980 <value>адрес</value>:<value>порт</value>.
978 Если же директив с параметром <parameter>default_server</parameter> нет, то 981 Если же директив с параметром <literal>default_server</literal> нет, то
979 сервером по умолчанию будет первый сервер, в котором описана пара 982 сервером по умолчанию будет первый сервер, в котором описана пара
980 <argument>адрес</argument>:<argument>порт</argument>. 983 <value>адрес</value>:<value>порт</value>.
981 адрес:порт. 984 адрес:порт.
982 <note> 985 <note>
983 До версии 0.8.21 этот параметр назывался просто 986 До версии 0.8.21 этот параметр назывался просто
984 <parameter>default</parameter>. 987 <literal>default</literal>.
985 </note> 988 </note>
986 </para> 989 </para>
987 990
988 <para> 991 <para>
989 В директиве <code>listen</code> можно также указать несколько 992 В директиве <literal>listen</literal> можно также указать несколько
990 дополнительных параметров, специфичных для системных вызовов 993 дополнительных параметров, специфичных для системных вызовов
991 <c-func>listen</c-func> и <c-func>bind</c-func>. 994 <c-func>listen</c-func> и <c-func>bind</c-func>.
992 Эти параметры можно задать в любой директиве <code>listen</code>, 995 Эти параметры можно задать в любой директиве <literal>listen</literal>,
993 но только один раз для указанной пары 996 но только один раз для указанной пары
994 <argument>адрес</argument>:<argument>порт</argument>. 997 <value>адрес</value>:<value>порт</value>.
995 <note> 998 <note>
996 До версии 0.8.21 их можно было указывать лишь в директиве 999 До версии 0.8.21 их можно было указывать лишь в директиве
997 <code>listen</code> с параметром <parameter>default</parameter>. 1000 <literal>listen</literal> с параметром <literal>default</literal>.
998 </note> 1001 </note>
999 <list type="tag"> 1002 <list type="tag">
1000 1003
1001 <tag-name> 1004 <tag-name>
1002 <parameter>setfib</parameter>=<argument>число</argument> 1005 <literal>setfib</literal>=<value>число</value>
1003 </tag-name> 1006 </tag-name>
1004 <tag-desc> 1007 <tag-desc>
1005 этот параметр (0.8.44) задаёт для слушающего сокета соответствующую 1008 этот параметр (0.8.44) задаёт для слушающего сокета соответствующую
1006 таблицу маршрутизации (FIB). 1009 таблицу маршрутизации (FIB).
1007 В настоящий момент это работает только на FreeBSD. 1010 В настоящий момент это работает только на FreeBSD.
1008 </tag-desc> 1011 </tag-desc>
1009 1012
1010 <tag-name> 1013 <tag-name>
1011 <parameter>backlog</parameter>=<argument>число</argument> 1014 <literal>backlog</literal>=<value>число</value>
1012 </tag-name> 1015 </tag-name>
1013 <tag-desc> 1016 <tag-desc>
1014 задаёт параметр <parameter>backlog</parameter> в вызове 1017 задаёт параметр <literal>backlog</literal> в вызове
1015 <c-func>listen</c-func>. 1018 <c-func>listen</c-func>.
1016 По умолчанию <parameter>backlog</parameter> равен -1 для FreeBSD 1019 По умолчанию <literal>backlog</literal> равен -1 для FreeBSD
1017 и 511 для других платформ. 1020 и 511 для других платформ.
1018 </tag-desc> 1021 </tag-desc>
1019 1022
1020 <tag-name> 1023 <tag-name>
1021 <parameter>rcvbuf</parameter>=<argument>размер</argument> 1024 <literal>rcvbuf</literal>=<value>размер</value>
1022 </tag-name> 1025 </tag-name>
1023 <tag-desc> 1026 <tag-desc>
1024 задаёт параметр <c-def>SO_RCVBUF</c-def> для слушающего сокета 1027 задаёт параметр <c-def>SO_RCVBUF</c-def> для слушающего сокета
1025 </tag-desc> 1028 </tag-desc>
1026 1029
1027 <tag-name> 1030 <tag-name>
1028 <parameter>sndbuf</parameter>=<argument>размер</argument> 1031 <literal>sndbuf</literal>=<value>размер</value>
1029 </tag-name> 1032 </tag-name>
1030 <tag-desc> 1033 <tag-desc>
1031 задаёт параметр <c-def>SO_SNDBUF</c-def> для слушающего сокета 1034 задаёт параметр <c-def>SO_SNDBUF</c-def> для слушающего сокета
1032 </tag-desc> 1035 </tag-desc>
1033 1036
1034 <tag-name> 1037 <tag-name>
1035 <parameter>accept_filter</parameter>=<argument>фильтр</argument> 1038 <literal>accept_filter</literal>=<value>фильтр</value>
1036 </tag-name> 1039 </tag-name>
1037 <tag-desc> 1040 <tag-desc>
1038 задаёт название accept-фильтра. 1041 задаёт название accept-фильтра.
1039 Работает только на FreeBSD, можно использовать два фильтра — 1042 Работает только на FreeBSD, можно использовать два фильтра —
1040 <value>dataready</value> и <value>httpready</value>. 1043 <literal>dataready</literal> и <literal>httpready</literal>.
1041 По сигналу <c-def>SIGHUP</c-def> accept-фильтр можно менять только в 1044 По сигналу <c-def>SIGHUP</c-def> accept-фильтр можно менять только в
1042 последних версиях FreeBSD, начиная с 6.0, 5.4-STABLE и 4.11-STABLE. 1045 последних версиях FreeBSD, начиная с 6.0, 5.4-STABLE и 4.11-STABLE.
1043 </tag-desc> 1046 </tag-desc>
1044 1047
1045 <tag-name> 1048 <tag-name>
1046 <parameter>deferred</parameter> 1049 <literal>deferred</literal>
1047 </tag-name> 1050 </tag-name>
1048 <tag-desc> 1051 <tag-desc>
1049 указывает использовать отложенный <c-func>accept</c-func> на Linux 1052 указывает использовать отложенный <c-func>accept</c-func> на Linux
1050 с помощью опции <c-def>TCP_DEFER_ACCEPT</c-def>. 1053 с помощью опции <c-def>TCP_DEFER_ACCEPT</c-def>.
1051 </tag-desc> 1054 </tag-desc>
1052 1055
1053 <tag-name> 1056 <tag-name>
1054 <parameter>bind</parameter> 1057 <literal>bind</literal>
1055 </tag-name> 1058 </tag-name>
1056 <tag-desc> 1059 <tag-desc>
1057 указывает, что для данной пары 1060 указывает, что для данной пары
1058 <argument>адрес</argument>:<argument>порт</argument> нужно делать 1061 <value>адрес</value>:<value>порт</value> нужно делать
1059 <c-func>bind</c-func> отдельно. 1062 <c-func>bind</c-func> отдельно.
1060 Дело в том, что если описаны несколько директив <code>listen</code> 1063 Дело в том, что если описаны несколько директив <literal>listen</literal>
1061 с одинаковым портом, но разными адресами и одна из директив 1064 с одинаковым портом, но разными адресами и одна из директив
1062 <code>listen</code> слушает на всех адресах для данного порта 1065 <literal>listen</literal> слушает на всех адресах для данного порта
1063 (<code>*</code>:<argument>порт</argument>, то nginx сделает 1066 (<literal>*:</literal><value>порт</value>, то nginx сделает
1064 <c-func>bind</c-func> только на <code>*</code>:<argument>порт</argument>. 1067 <c-func>bind</c-func> только на <literal>*:</literal><value>порт</value>.
1065 Необходимо заметить, что в этом случае для определения адреса, на которой 1068 Необходимо заметить, что в этом случае для определения адреса, на которой
1066 пришло соединение, делается системный вызов <c-func>getsockname</c-func>. 1069 пришло соединение, делается системный вызов <c-func>getsockname</c-func>.
1067 Если же используются параметры <parameter>backlog</parameter>, 1070 Если же используются параметры <literal>backlog</literal>,
1068 <parameter>rcvbuf</parameter>, <parameter>sndbuf</parameter>, 1071 <literal>rcvbuf</literal>, <literal>sndbuf</literal>,
1069 <parameter>accept_filter</parameter>, <parameter>deferred</parameter> 1072 <literal>accept_filter</literal>, <literal>deferred</literal>
1070 или <parameter>so_keepalive</parameter>, то для данной пары 1073 или <literal>so_keepalive</literal>, то для данной пары
1071 <argument>адрес</argument>:<argument>порт</argument> всегда делается 1074 <value>адрес</value>:<value>порт</value> всегда делается
1072 отдельный вызов <c-func>bind</c-func>. 1075 отдельный вызов <c-func>bind</c-func>.
1073 </tag-desc> 1076 </tag-desc>
1074 1077
1075 <tag-name> 1078 <tag-name>
1076 <parameter>ipv6only</parameter>=<value>on</value>|<value>off</value> 1079 <literal>ipv6only</literal>=<literal>on</literal>|<literal>off</literal>
1077 </tag-name> 1080 </tag-name>
1078 <tag-desc> 1081 <tag-desc>
1079 параметр (0.7.42) задаёт значение параметра <c-def>IPV6_V6ONLY</c-def> 1082 параметр (0.7.42) задаёт значение параметра <c-def>IPV6_V6ONLY</c-def>
1080 для слушающего сокета. 1083 для слушающего сокета.
1081 Установить этот параметр можно только один раз на старте. 1084 Установить этот параметр можно только один раз на старте.
1082 </tag-desc> 1085 </tag-desc>
1083 1086
1084 <tag-name> 1087 <tag-name>
1085 <parameter>ssl</parameter> 1088 <literal>ssl</literal>
1086 </tag-name> 1089 </tag-name>
1087 <tag-desc> 1090 <tag-desc>
1088 этот параметр (0.7.14) не имеет отношения к системным вызовам 1091 этот параметр (0.7.14) не имеет отношения к системным вызовам
1089 <c-func>listen</c-func> и <c-func>bind</c-func>, а позволяет указать, 1092 <c-func>listen</c-func> и <c-func>bind</c-func>, а позволяет указать,
1090 что все соединения, принимаемые на этом порту, должны работать 1093 что все соединения, принимаемые на этом порту, должны работать
1096 listen 443 default ssl; 1099 listen 443 default ssl;
1097 </example> 1100 </example>
1098 </tag-desc> 1101 </tag-desc>
1099 1102
1100 <tag-name> 1103 <tag-name>
1101 <parameter>so_keepalive</parameter>=<value>on</value>|<value>off</value>|[<argument>keepidle</argument>]:[<argument>keepintvl</argument>]:[<argument>keepcnt</argument>] 1104 <literal>so_keepalive</literal>=<literal>on</literal>|<literal>off</literal>|[<value>keepidle</value>]:[<value>keepintvl</value>]:[<value>keepcnt</value>]
1102 </tag-name> 1105 </tag-name>
1103 <tag-desc> 1106 <tag-desc>
1104 этот параметр (1.1.11) конфигурирует для слушающего сокета 1107 этот параметр (1.1.11) конфигурирует для слушающего сокета
1105 поведение “TCP keepalive”. 1108 поведение “TCP keepalive”.
1106 Если этот параметр опущен, то для сокета будут действовать 1109 Если этот параметр опущен, то для сокета будут действовать
1107 стандартные системные настройки. 1110 стандартные системные настройки.
1108 Если он установлен в значение “<value>on</value>”, то для сокета 1111 Если он установлен в значение “<literal>on</literal>”, то для сокета
1109 включается опция <c-def>SO_KEEPALIVE</c-def>. 1112 включается опция <c-def>SO_KEEPALIVE</c-def>.
1110 Если он установлен в значение “<value>off</value>”, то для сокета 1113 Если он установлен в значение “<literal>off</literal>”, то для сокета
1111 опция <c-def>SO_KEEPALIVE</c-def> выключается. 1114 опция <c-def>SO_KEEPALIVE</c-def> выключается.
1112 Некоторые операционные системы поддерживают настройку параметров 1115 Некоторые операционные системы поддерживают настройку параметров
1113 “TCP keepalive” на уровне сокета посредством опций 1116 “TCP keepalive” на уровне сокета посредством опций
1114 <c-def>TCP_KEEPIDLE</c-def>, <c-def>TCP_KEEPINTVL</c-def> и 1117 <c-def>TCP_KEEPIDLE</c-def>, <c-def>TCP_KEEPINTVL</c-def> и
1115 <c-def>TCP_KEEPCNT</c-def>. 1118 <c-def>TCP_KEEPCNT</c-def>.
1116 На таких системах (в настоящий момент это Linux 2.4+ и NetBSD 5+) 1119 На таких системах (в настоящий момент это Linux 2.4+ и NetBSD 5+)
1117 их можно сконфигурировать с помощью аргументов <argument>keepidle</argument>, 1120 их можно сконфигурировать с помощью параметров <value>keepidle</value>,
1118 <argument>keepintvl</argument> и <argument>keepcnt</argument>. 1121 <value>keepintvl</value> и <value>keepcnt</value>.
1119 Один или два аргумента могут быть опущены, в таком случае для 1122 Один или два параметра могут быть опущены, в таком случае для
1120 соответствующей опции сокета будут действовать стандартные 1123 соответствующей опции сокета будут действовать стандартные
1121 системные настройки. 1124 системные настройки.
1122 Например, 1125 Например,
1123 <example>so_keepalive=30m::10</example> 1126 <example>so_keepalive=30m::10</example>
1124 установит таймаут бездействия (<c-def>TCP_KEEPIDLE</c-def>) в 30 минут, 1127 установит таймаут бездействия (<c-def>TCP_KEEPIDLE</c-def>) в 30 минут,
1140 </directive> 1143 </directive>
1141 1144
1142 1145
1143 <directive name="location"> 1146 <directive name="location">
1144 <syntax block="yes">[ 1147 <syntax block="yes">[
1145 <value>=</value> | 1148 <literal>=</literal> |
1146 <value>~</value> | 1149 <literal>~</literal> |
1147 <value>~*</value> | 1150 <literal>~*</literal> |
1148 <value>^~</value> 1151 <literal>^~</literal>
1149 ] <argument>uri</argument></syntax> 1152 ] <value>uri</value></syntax>
1150 <syntax block="yes"><value>@</value><argument>имя</argument></syntax> 1153 <syntax block="yes"><literal>@</literal><value>имя</value></syntax>
1151 <default/> 1154 <default/>
1152 <context>server</context> 1155 <context>server</context>
1153 <context>location</context> 1156 <context>location</context>
1154 1157
1155 <para> 1158 <para>
1156 Устанавливает конфигурацию в зависимости от URI запроса. 1159 Устанавливает конфигурацию в зависимости от URI запроса.
1157 location можно задать префиксной строкой или регулярным выражением. 1160 location можно задать префиксной строкой или регулярным выражением.
1158 Регулярные выражения задаются либо с префиксом “<value>~*</value>” 1161 Регулярные выражения задаются либо с префиксом “<literal>~*</literal>”
1159 (для поиска совпадения без учёта регистра символов), 1162 (для поиска совпадения без учёта регистра символов),
1160 либо с префиксом “<value>~</value>” (с учётом регистра). 1163 либо с префиксом “<literal>~</literal>” (с учётом регистра).
1161 Чтобы найти location, соответствующий запросу, вначале проверяются 1164 Чтобы найти location, соответствующий запросу, вначале проверяются
1162 location'ы, заданные префиксными строками (префиксные location'ы). 1165 location'ы, заданные префиксными строками (префиксные location'ы).
1163 Среди них ищется максимальное совпадение. 1166 Среди них ищется максимальное совпадение.
1164 Затем проверяются регулярные выражения, в порядке их следования 1167 Затем проверяются регулярные выражения, в порядке их следования
1165 в конфигурационном файле. 1168 в конфигурационном файле.
1186 затем использоваться в других директивах. 1189 затем использоваться в других директивах.
1187 </para> 1190 </para>
1188 1191
1189 <para> 1192 <para>
1190 Если у максимального совпавшего префиксного location'а указан префикс 1193 Если у максимального совпавшего префиксного location'а указан префикс
1191 “<value>^~</value>”, то регулярные выражения не проверяются. 1194 “<literal>^~</literal>”, то регулярные выражения не проверяются.
1192 </para> 1195 </para>
1193 1196
1194 <para> 1197 <para>
1195 Кроме того, с помощью префикса “<value>=</value>” можно задать точное 1198 Кроме того, с помощью префикса “<literal>=</literal>” можно задать точное
1196 совпадение URI и location. 1199 совпадение URI и location.
1197 При точном совпадении поиск сразу же прекращается. 1200 При точном совпадении поиск сразу же прекращается.
1198 Например, если запрос “<code>/</code>” случается часто, то 1201 Например, если запрос “<literal>/</literal>” случается часто, то
1199 указав “<code>location = /</code>”, можно ускорить обработку 1202 указав “<literal>location = /</literal>”, можно ускорить обработку
1200 этих запросов, так как поиск прекратится после первого же сравнения. 1203 этих запросов, так как поиск прекратится после первого же сравнения.
1201 Очевидно, что такой location не может иметь вложенные location'ы. 1204 Очевидно, что такой location не может иметь вложенные location'ы.
1202 </para> 1205 </para>
1203 1206
1204 <para> 1207 <para>
1205 <note> 1208 <note>
1206 В версиях с 0.7.1 по 0.8.41, если запрос точно совпал с префиксным 1209 В версиях с 0.7.1 по 0.8.41, если запрос точно совпал с префиксным
1207 location'ом без префиксов “<value>=</value>” и “<value>^~</value>”, 1210 location'ом без префиксов “<literal>=</literal>” и “<literal>^~</literal>”,
1208 то поиск тоже сразу же прекращается и регулярные выражения также 1211 то поиск тоже сразу же прекращается и регулярные выражения также
1209 не проверяются. 1212 не проверяются.
1210 </note> 1213 </note>
1211 </para> 1214 </para>
1212 1215
1227 1230
1228 location ~* \.(gif|jpg|jpeg)$ { 1231 location ~* \.(gif|jpg|jpeg)$ {
1229 [ конфигурация Г ] 1232 [ конфигурация Г ]
1230 } 1233 }
1231 </example> 1234 </example>
1232 Для запроса “<code>/</code>” будет выбрана конфигурация А, 1235 Для запроса “<literal>/</literal>” будет выбрана конфигурация А,
1233 для запроса “<code>/documents/document.html</code>” — конфигурация Б, 1236 для запроса “<literal>/documents/document.html</literal>” — конфигурация Б,
1234 для запроса “<code>/images/1.gif</code>” — конфигурация В, 1237 для запроса “<literal>/images/1.gif</literal>” — конфигурация В,
1235 а для запроса “<code>/documents/1.jpg</code>” — конфигурация Г. 1238 а для запроса “<literal>/documents/1.jpg</literal>” — конфигурация Г.
1236 </para> 1239 </para>
1237 1240
1238 <para> 1241 <para>
1239 Префикс “<value>@</value>” задаёт именованный location. 1242 Префикс “<literal>@</literal>” задаёт именованный location.
1240 Такой location не используется при обычной обработке запросов, а 1243 Такой location не используется при обычной обработке запросов, а
1241 предназначен только для перенаправления в него запросов. 1244 предназначен только для перенаправления в него запросов.
1242 Такие location'ы не могут быть вложенными и не могут содержать 1245 Такие location'ы не могут быть вложенными и не могут содержать
1243 вложенные location'ы. 1246 вложенные location'ы.
1244 </para> 1247 </para>
1249 1252
1250 </directive> 1253 </directive>
1251 1254
1252 1255
1253 <directive name="log_not_found"> 1256 <directive name="log_not_found">
1254 <syntax><value>on</value> | <value>off</value></syntax> 1257 <syntax><literal>on</literal> | <literal>off</literal></syntax>
1255 <default>on</default> 1258 <default>on</default>
1256 <context>http</context> 1259 <context>http</context>
1257 <context>server</context> 1260 <context>server</context>
1258 <context>location</context> 1261 <context>location</context>
1259 1262
1265 1268
1266 </directive> 1269 </directive>
1267 1270
1268 1271
1269 <directive name="log_subrequest"> 1272 <directive name="log_subrequest">
1270 <syntax><value>on</value> | <value>off</value></syntax> 1273 <syntax><literal>on</literal> | <literal>off</literal></syntax>
1271 <default>off</default> 1274 <default>off</default>
1272 <context>http</context> 1275 <context>http</context>
1273 <context>server</context> 1276 <context>server</context>
1274 <context>location</context> 1277 <context>location</context>
1275 1278
1281 1284
1282 </directive> 1285 </directive>
1283 1286
1284 1287
1285 <directive name="max_ranges"> 1288 <directive name="max_ranges">
1286 <syntax><argument>число</argument></syntax> 1289 <syntax><value>число</value></syntax>
1287 <default/> 1290 <default/>
1288 <context>http</context> 1291 <context>http</context>
1289 <context>server</context> 1292 <context>server</context>
1290 <context>location</context> 1293 <context>location</context>
1291 1294
1300 1303
1301 </directive> 1304 </directive>
1302 1305
1303 1306
1304 <directive name="merge_slashes"> 1307 <directive name="merge_slashes">
1305 <syntax><value>on</value> | <value>off</value></syntax> 1308 <syntax><literal>on</literal> | <literal>off</literal></syntax>
1306 <default>on</default> 1309 <default>on</default>
1307 <context>http</context> 1310 <context>http</context>
1308 <context>server</context> 1311 <context>server</context>
1309 1312
1310 <para> 1313 <para>
1311 Разрешает или запрещает преобразование URI путём замены двух и более подряд 1314 Разрешает или запрещает преобразование URI путём замены двух и более подряд
1312 идущих слэшей (“<code>/</code>”) в один. 1315 идущих слэшей (“<literal>/</literal>”) в один.
1313 </para> 1316 </para>
1314 1317
1315 <para> 1318 <para>
1316 Необходимо иметь ввиду, что это преобразование необходимо для корректной 1319 Необходимо иметь ввиду, что это преобразование необходимо для корректной
1317 проверки префиксных строк и регулярных выражений. 1320 проверки префиксных строк и регулярных выражений.
1318 Если его не делать, то запрос “<code>//scripts/one.php</code>” не попадёт в 1321 Если его не делать, то запрос “<literal>//scripts/one.php</literal>” не попадёт в
1319 <example> 1322 <example>
1320 location /scripts/ { 1323 location /scripts/ {
1321 ... 1324 ...
1322 } 1325 }
1323 </example> 1326 </example>
1324 и может быть обслужен как статический файл. 1327 и может быть обслужен как статический файл.
1325 Поэтому он преобразуется к виду “<code>/scripts/one.php</code>”. 1328 Поэтому он преобразуется к виду “<literal>/scripts/one.php</literal>”.
1326 </para> 1329 </para>
1327 1330
1328 <para> 1331 <para>
1329 Запрет преобразования может понадобиться, если в URI используются имена, 1332 Запрет преобразования может понадобиться, если в URI используются имена,
1330 закодированные методом base64, в котором задействован символ “<code>/</code>”. 1333 закодированные методом base64, в котором задействован символ
1334 “<literal>/</literal>”.
1331 Однако по соображениям безопасности лучше избегать отключения преобразования. 1335 Однако по соображениям безопасности лучше избегать отключения преобразования.
1332 </para> 1336 </para>
1333 1337
1334 <para> 1338 <para>
1335 Если директива указана на уровне 1339 Если директива указана на уровне
1340 1344
1341 </directive> 1345 </directive>
1342 1346
1343 1347
1344 <directive name="msie_padding"> 1348 <directive name="msie_padding">
1345 <syntax><value>on</value> | <value>off</value></syntax> 1349 <syntax><literal>on</literal> | <literal>off</literal></syntax>
1346 <default>on</default> 1350 <default>on</default>
1347 <context>http</context> 1351 <context>http</context>
1348 <context>server</context> 1352 <context>server</context>
1349 <context>location</context> 1353 <context>location</context>
1350 1354
1355 1359
1356 </directive> 1360 </directive>
1357 1361
1358 1362
1359 <directive name="msie_refresh"> 1363 <directive name="msie_refresh">
1360 <syntax><value>on</value> | <value>off</value></syntax> 1364 <syntax><literal>on</literal> | <literal>off</literal></syntax>
1361 <default>off</default> 1365 <default>off</default>
1362 <context>http</context> 1366 <context>http</context>
1363 <context>server</context> 1367 <context>server</context>
1364 <context>location</context> 1368 <context>location</context>
1365 1369
1370 1374
1371 </directive> 1375 </directive>
1372 1376
1373 1377
1374 <directive name="open_file_cache"> 1378 <directive name="open_file_cache">
1375 <syntax><value>off</value></syntax> 1379 <syntax><literal>off</literal></syntax>
1376 <syntax> 1380 <syntax>
1377 <parameter>max</parameter>=<argument>N</argument> 1381 <literal>max</literal>=<value>N</value>
1378 [<parameter>inactive</parameter>=<argument>время</argument>]</syntax> 1382 [<literal>inactive</literal>=<value>время</value>]</syntax>
1379 <default>off</default> 1383 <default>off</default>
1380 <context>http</context> 1384 <context>http</context>
1381 <context>server</context> 1385 <context>server</context>
1382 <context>location</context> 1386 <context>location</context>
1383 1387
1408 <para> 1412 <para>
1409 У директивы есть следующие параметры: 1413 У директивы есть следующие параметры:
1410 <list type="tag"> 1414 <list type="tag">
1411 1415
1412 <tag-name> 1416 <tag-name>
1413 <parameter>max</parameter> 1417 <literal>max</literal>
1414 </tag-name> 1418 </tag-name>
1415 <tag-desc> 1419 <tag-desc>
1416 задаёт максимальное число элементов в кэше; 1420 задаёт максимальное число элементов в кэше;
1417 при переполнении кэша удаляются наиболее давно не используемые элементы (LRU); 1421 при переполнении кэша удаляются наиболее давно не используемые элементы (LRU);
1418 </tag-desc> 1422 </tag-desc>
1419 1423
1420 <tag-name> 1424 <tag-name>
1421 <parameter>inactive</parameter> 1425 <literal>inactive</literal>
1422 </tag-name> 1426 </tag-name>
1423 <tag-desc> 1427 <tag-desc>
1424 задаёт время, после которого элемент кэша удаляется, если к нему 1428 задаёт время, после которого элемент кэша удаляется, если к нему
1425 не было обращений в течение этого времени; по умолчанию 60 секунд; 1429 не было обращений в течение этого времени; по умолчанию 60 секунд;
1426 </tag-desc> 1430 </tag-desc>
1427 1431
1428 <tag-name> 1432 <tag-name>
1429 <value>off</value> 1433 <literal>off</literal>
1430 </tag-name> 1434 </tag-name>
1431 <tag-desc> 1435 <tag-desc>
1432 запрещает кэш. 1436 запрещает кэш.
1433 </tag-desc> 1437 </tag-desc>
1434 1438
1450 1454
1451 </directive> 1455 </directive>
1452 1456
1453 1457
1454 <directive name="open_file_cache_errors"> 1458 <directive name="open_file_cache_errors">
1455 <syntax><value>on</value> | <value>off</value></syntax> 1459 <syntax><literal>on</literal> | <literal>off</literal></syntax>
1456 <default>off</default> 1460 <default>off</default>
1457 <context>http</context> 1461 <context>http</context>
1458 <context>server</context> 1462 <context>server</context>
1459 <context>location</context> 1463 <context>location</context>
1460 1464
1467 1471
1468 1472
1469 <!-- 1473 <!--
1470 1474
1471 <directive name="open_file_cache_events"> 1475 <directive name="open_file_cache_events">
1472 <syntax><value>on</value> | <value>off</value></syntax> 1476 <syntax><literal>on</literal> | <literal>off</literal></syntax>
1473 <default>off</default> 1477 <default>off</default>
1474 <context>http</context> 1478 <context>http</context>
1475 <context>server</context> 1479 <context>server</context>
1476 <context>location</context> 1480 <context>location</context>
1477 1481
1490 1494
1491 --> 1495 -->
1492 1496
1493 1497
1494 <directive name="open_file_cache_min_uses"> 1498 <directive name="open_file_cache_min_uses">
1495 <syntax><argument>число</argument></syntax> 1499 <syntax><value>число</value></syntax>
1496 <default>1</default> 1500 <default>1</default>
1497 <context>http</context> 1501 <context>http</context>
1498 <context>server</context> 1502 <context>server</context>
1499 <context>location</context> 1503 <context>location</context>
1500 1504
1501 <para> 1505 <para>
1502 Задаёт минимальное <argument>число</argument> обращений к файлу 1506 Задаёт минимальное <value>число</value> обращений к файлу
1503 в течение времени, заданного параметром <parameter>inactive</parameter> 1507 в течение времени, заданного параметром <literal>inactive</literal>
1504 директивы <link id="open_file_cache"/>, после которого дескриптор 1508 директивы <link id="open_file_cache"/>, после которого дескриптор
1505 файла будет оставаться открытым в кэше. 1509 файла будет оставаться открытым в кэше.
1506 </para> 1510 </para>
1507 1511
1508 </directive> 1512 </directive>
1509 1513
1510 1514
1511 <directive name="open_file_cache_valid"> 1515 <directive name="open_file_cache_valid">
1512 <syntax><argument>время</argument></syntax> 1516 <syntax><value>время</value></syntax>
1513 <default>60s</default> 1517 <default>60s</default>
1514 <context>http</context> 1518 <context>http</context>
1515 <context>server</context> 1519 <context>server</context>
1516 <context>location</context> 1520 <context>location</context>
1517 1521
1529 1533
1530 </directive> 1534 </directive>
1531 1535
1532 1536
1533 <directive name="optimize_server_names"> 1537 <directive name="optimize_server_names">
1534 <syntax><value>on</value> | <value>off</value></syntax> 1538 <syntax><literal>on</literal> | <literal>off</literal></syntax>
1535 <default>off</default> 1539 <default>off</default>
1536 <context>http</context> 1540 <context>http</context>
1537 <context>server</context> 1541 <context>server</context>
1538 1542
1539 <para> 1543 <para>
1556 1560
1557 </directive> 1561 </directive>
1558 1562
1559 1563
1560 <directive name="port_in_redirect"> 1564 <directive name="port_in_redirect">
1561 <syntax><value>on</value> | <value>off</value></syntax> 1565 <syntax><literal>on</literal> | <literal>off</literal></syntax>
1562 <default>on</default> 1566 <default>on</default>
1563 <context>http</context> 1567 <context>http</context>
1564 <context>server</context> 1568 <context>server</context>
1565 <context>location</context> 1569 <context>location</context>
1566 1570
1574 1578
1575 </directive> 1579 </directive>
1576 1580
1577 1581
1578 <directive name="postpone_output"> 1582 <directive name="postpone_output">
1579 <syntax><argument>размер</argument></syntax> 1583 <syntax><value>размер</value></syntax>
1580 <default>1460</default> 1584 <default>1460</default>
1581 <context>http</context> 1585 <context>http</context>
1582 <context>server</context> 1586 <context>server</context>
1583 <context>location</context> 1587 <context>location</context>
1584 1588
1590 1594
1591 </directive> 1595 </directive>
1592 1596
1593 1597
1594 <directive name="read_ahead"> 1598 <directive name="read_ahead">
1595 <syntax><argument>размер</argument></syntax> 1599 <syntax><value>размер</value></syntax>
1596 <default>0</default> 1600 <default>0</default>
1597 <context>http</context> 1601 <context>http</context>
1598 <context>server</context> 1602 <context>server</context>
1599 <context>location</context> 1603 <context>location</context>
1600 1604
1602 Задаёт ядру размер предчтения при работе с файлами. 1606 Задаёт ядру размер предчтения при работе с файлами.
1603 </para> 1607 </para>
1604 1608
1605 <para> 1609 <para>
1606 На Linux используется системный вызов 1610 На Linux используется системный вызов
1607 <code>posix_fadvise(0, 0, 0, POSIX_FADV_SEQUENTIAL)</code>, 1611 <literal>posix_fadvise(0, 0, 0, POSIX_FADV_SEQUENTIAL)</literal>,
1608 поэтому аргумент <argument>размер</argument> там игнорируется. 1612 поэтому параметр <value>размер</value> там игнорируется.
1609 </para> 1613 </para>
1610 1614
1611 <para> 1615 <para>
1612 На FreeBSD используется системный вызов 1616 На FreeBSD используется системный вызов
1613 <code>fcntl(O_READAHEAD,</code><argument>размер</argument><code>)</code>, 1617 <literal>fcntl(O_READAHEAD,
1618 </literal><value>размер</value><literal>)</literal>,
1614 появившийся во FreeBSD&nbsp;9.0-CURRENT. 1619 появившийся во FreeBSD&nbsp;9.0-CURRENT.
1615 Для FreeBSD&nbsp;7 необходимо установить 1620 Для FreeBSD&nbsp;7 необходимо установить
1616 <link url="http://sysoev.ru/freebsd/patch.readahead.txt">патч</link>. 1621 <link url="http://sysoev.ru/freebsd/patch.readahead.txt">патч</link>.
1617 </para> 1622 </para>
1618 1623
1619 </directive> 1624 </directive>
1620 1625
1621 1626
1622 <directive name="recursive_error_pages"> 1627 <directive name="recursive_error_pages">
1623 <syntax><value>on</value> | <value>off</value></syntax> 1628 <syntax><literal>on</literal> | <literal>off</literal></syntax>
1624 <default>off</default> 1629 <default>off</default>
1625 <context>http</context> 1630 <context>http</context>
1626 <context>server</context> 1631 <context>server</context>
1627 <context>location</context> 1632 <context>location</context>
1628 1633
1633 1638
1634 </directive> 1639 </directive>
1635 1640
1636 1641
1637 <directive name="request_pool_size"> 1642 <directive name="request_pool_size">
1638 <syntax><argument>размер</argument></syntax> 1643 <syntax><value>размер</value></syntax>
1639 <default>4k</default> 1644 <default>4k</default>
1640 <context>http</context> 1645 <context>http</context>
1641 <context>server</context> 1646 <context>server</context>
1642 1647
1643 <para> 1648 <para>
1650 </directive> 1655 </directive>
1651 1656
1652 1657
1653 <directive name="reset_timedout_connection"> 1658 <directive name="reset_timedout_connection">
1654 <syntax> 1659 <syntax>
1655 <value>on</value> | <value>off</value></syntax> 1660 <literal>on</literal> | <literal>off</literal></syntax>
1656 <default>off</default> 1661 <default>off</default>
1657 <context>http</context> 1662 <context>http</context>
1658 <context>server</context> 1663 <context>server</context>
1659 <context>location</context> 1664 <context>location</context>
1660 1665
1678 </directive> 1683 </directive>
1679 1684
1680 1685
1681 <directive name="resolver"> 1686 <directive name="resolver">
1682 <syntax> 1687 <syntax>
1683 <argument>адрес</argument> ... 1688 <value>адрес</value> ...
1684 [<parameter>valid</parameter>=<argument>время</argument>]</syntax> 1689 [<literal>valid</literal>=<value>время</value>]</syntax>
1685 <default/> 1690 <default/>
1686 <context>http</context> 1691 <context>http</context>
1687 <context>server</context> 1692 <context>server</context>
1688 <context>location</context> 1693 <context>location</context>
1689 1694
1691 Задаёт серверы DNS, используемые для преобразования имён апстрим серверов 1696 Задаёт серверы DNS, используемые для преобразования имён апстрим серверов
1692 в адреса, например: 1697 в адреса, например:
1693 <example> 1698 <example>
1694 resolver 127.0.0.1 192.0.2.1; 1699 resolver 127.0.0.1 192.0.2.1;
1695 </example> 1700 </example>
1696 Аргумент <argument>адрес</argument> может быть задан либо 1701 Параметр <value>адрес</value> может быть задан либо
1697 IPv4-адресом, либо именем хоста; 1702 IPv4-адресом, либо именем хоста;
1698 во втором случае используется первый полученный IPv4-адрес. 1703 во втором случае используется первый полученный IPv4-адрес.
1699 Серверы DNS опрашиваются циклически. 1704 Серверы DNS опрашиваются циклически.
1700 <note> 1705 <note>
1701 До версии 1.1.7 можно было задать лишь один DNS-сервер. 1706 До версии 1.1.7 можно было задать лишь один DNS-сервер.
1702 </note> 1707 </note>
1703 По умолчанию nginx кэширует ответы, используя значение TTL из ответа. 1708 По умолчанию nginx кэширует ответы, используя значение TTL из ответа.
1704 Необязательный параметр <parameter>valid</parameter> позволяет это 1709 Необязательный параметр <literal>valid</literal> позволяет это
1705 переопределить: 1710 переопределить:
1706 <example> 1711 <example>
1707 resolver 127.0.0.1 192.0.2.1 valid=30s; 1712 resolver 127.0.0.1 192.0.2.1 valid=30s;
1708 </example> 1713 </example>
1709 <note> 1714 <note>
1714 1719
1715 </directive> 1720 </directive>
1716 1721
1717 1722
1718 <directive name="resolver_timeout"> 1723 <directive name="resolver_timeout">
1719 <syntax><argument>время</argument></syntax> 1724 <syntax><value>время</value></syntax>
1720 <default>30s</default> 1725 <default>30s</default>
1721 <context>http</context> 1726 <context>http</context>
1722 <context>server</context> 1727 <context>server</context>
1723 <context>location</context> 1728 <context>location</context>
1724 1729
1731 1736
1732 </directive> 1737 </directive>
1733 1738
1734 1739
1735 <directive name="root"> 1740 <directive name="root">
1736 <syntax><argument>путь</argument></syntax> 1741 <syntax><value>путь</value></syntax>
1737 <default>html</default> 1742 <default>html</default>
1738 <context>http</context> 1743 <context>http</context>
1739 <context>server</context> 1744 <context>server</context>
1740 <context>location</context> 1745 <context>location</context>
1741 <context>if в location</context> 1746 <context>if в location</context>
1746 <example> 1751 <example>
1747 location /i/ { 1752 location /i/ {
1748 root /data/w3; 1753 root /data/w3;
1749 } 1754 }
1750 </example> 1755 </example>
1751 в ответ на запрос “<code>/i/top.gif</code>” будет отдан файл 1756 в ответ на запрос “<literal>/i/top.gif</literal>” будет отдан файл
1752 <path>/data/w3/i/top.gif</path>. 1757 <path>/data/w3/i/top.gif</path>.
1753 </para> 1758 </para>
1754 1759
1755 <para> 1760 <para>
1756 В значении аргумента <argument>путь</argument> можно использовать переменные, 1761 В значении параметра <value>путь</value> можно использовать переменные,
1757 кроме <var>$document_root</var> и <var>$realpath_root</var>. 1762 кроме <var>$document_root</var> и <var>$realpath_root</var>.
1758 </para> 1763 </para>
1759 1764
1760 <para> 1765 <para>
1761 Путь к файлу формируется путём простого добавления URI к значению директивы 1766 Путь к файлу формируется путём простого добавления URI к значению директивы
1762 <code>root</code>. 1767 <literal>root</literal>.
1763 Если же URI необходимо поменять, следует воспользоваться директивой 1768 Если же URI необходимо поменять, следует воспользоваться директивой
1764 <link id="alias"/>. 1769 <link id="alias"/>.
1765 </para> 1770 </para>
1766 1771
1767 </directive> 1772 </directive>
1768 1773
1769 1774
1770 <directive name="satisfy"> 1775 <directive name="satisfy">
1771 <syntax><value>all</value> | <value>any</value></syntax> 1776 <syntax><literal>all</literal> | <literal>any</literal></syntax>
1772 <default>all</default> 1777 <default>all</default>
1773 <context>http</context> 1778 <context>http</context>
1774 <context>server</context> 1779 <context>server</context>
1775 <context>location</context> 1780 <context>location</context>
1776 1781
1777 <para> 1782 <para>
1778 Разрешает доступ, если оба (<value>all</value>) 1783 Разрешает доступ, если оба (<literal>all</literal>)
1779 или хотя бы один (<value>any</value>) из модулей 1784 или хотя бы один (<literal>any</literal>) из модулей
1780 <link doc="ngx_http_access_module.xml">ngx_http_access_module</link> 1785 <link doc="ngx_http_access_module.xml">ngx_http_access_module</link>
1781 и <link doc="ngx_http_auth_basic_module.xml">ngx_http_auth_basic_module</link> 1786 и <link doc="ngx_http_auth_basic_module.xml">ngx_http_auth_basic_module</link>
1782 разрешают доступ. 1787 разрешают доступ.
1783 </para> 1788 </para>
1784 1789
1799 1804
1800 </directive> 1805 </directive>
1801 1806
1802 1807
1803 <directive name="satisfy_any"> 1808 <directive name="satisfy_any">
1804 <syntax><value>on</value> | <value>off</value></syntax> 1809 <syntax><literal>on</literal> | <literal>off</literal></syntax>
1805 <default>off</default> 1810 <default>off</default>
1806 <context>http</context> 1811 <context>http</context>
1807 <context>server</context> 1812 <context>server</context>
1808 <context>location</context> 1813 <context>location</context>
1809 1814
1814 1819
1815 </directive> 1820 </directive>
1816 1821
1817 1822
1818 <directive name="send_lowat"> 1823 <directive name="send_lowat">
1819 <syntax><argument>размер</argument></syntax> 1824 <syntax><value>размер</value></syntax>
1820 <default>0</default> 1825 <default>0</default>
1821 <context>http</context> 1826 <context>http</context>
1822 <context>server</context> 1827 <context>server</context>
1823 <context>location</context> 1828 <context>location</context>
1824 1829
1837 1842
1838 </directive> 1843 </directive>
1839 1844
1840 1845
1841 <directive name="send_timeout"> 1846 <directive name="send_timeout">
1842 <syntax><argument>время</argument></syntax> 1847 <syntax><value>время</value></syntax>
1843 <default>60s</default> 1848 <default>60s</default>
1844 <context>http</context> 1849 <context>http</context>
1845 <context>server</context> 1850 <context>server</context>
1846 <context>location</context> 1851 <context>location</context>
1847 1852
1856 </directive> 1861 </directive>
1857 1862
1858 1863
1859 <directive name="sendfile"> 1864 <directive name="sendfile">
1860 1865
1861 <syntax><value>on</value> | <value>off</value></syntax> 1866 <syntax><literal>on</literal> | <literal>off</literal></syntax>
1862 <default>off</default> 1867 <default>off</default>
1863 <context>http</context> 1868 <context>http</context>
1864 <context>server</context> 1869 <context>server</context>
1865 <context>location</context> 1870 <context>location</context>
1866 <context>if в location</context> 1871 <context>if в location</context>
1873 </directive> 1878 </directive>
1874 1879
1875 1880
1876 <directive name="sendfile_max_chunk"> 1881 <directive name="sendfile_max_chunk">
1877 1882
1878 <syntax><argument>размер</argument></syntax> 1883 <syntax><value>размер</value></syntax>
1879 <default>0</default> 1884 <default>0</default>
1880 <context>http</context> 1885 <context>http</context>
1881 <context>server</context> 1886 <context>server</context>
1882 <context>location</context> 1887 <context>location</context>
1883 1888
1910 1915
1911 </directive> 1916 </directive>
1912 1917
1913 1918
1914 <directive name="server_name"> 1919 <directive name="server_name">
1915 <syntax><argument>имя</argument> ...</syntax> 1920 <syntax><value>имя</value> ...</syntax>
1916 <default>""</default> 1921 <default>""</default>
1917 <context>server</context> 1922 <context>server</context>
1918 1923
1919 <para> 1924 <para>
1920 Задаёт имена виртуального сервера, например: 1925 Задаёт имена виртуального сервера, например:
1925 </example> 1930 </example>
1926 </para> 1931 </para>
1927 1932
1928 <para> 1933 <para>
1929 Первое имя становится основным именем сервера. 1934 Первое имя становится основным именем сервера.
1930 В именах серверов можно использовать звёздочку (“<code>*</code>”) 1935 В именах серверов можно использовать звёздочку (“<literal>*</literal>”)
1931 для замены первой или последней части имени: 1936 для замены первой или последней части имени:
1932 <example> 1937 <example>
1933 server { 1938 server {
1934 server_name example.com *.example.com www.example.*; 1939 server_name example.com *.example.com www.example.*;
1935 } 1940 }
1944 } 1949 }
1945 </example> 1950 </example>
1946 </para> 1951 </para>
1947 1952
1948 <para> 1953 <para>
1949 Если аргумент равен “<var>$hostname</var>” (0.9.4), то 1954 Если параметр равен “<var>$hostname</var>” (0.9.4), то
1950 подставляется имя хоста (hostname) машины. 1955 подставляется имя хоста (hostname) машины.
1951 </para> 1956 </para>
1952 1957
1953 <para> 1958 <para>
1954 В качестве имени сервера можно также использовать регулярное выражение, 1959 В качестве имени сервера можно также использовать регулярное выражение,
1955 указав перед ним тильду (“<code>~</code>”): 1960 указав перед ним тильду (“<literal>~</literal>”):
1956 <example> 1961 <example>
1957 server { 1962 server {
1958 server_name www.example.com ~^www\d+\.example\.com$; 1963 server_name www.example.com ~^www\d+\.example\.com$;
1959 } 1964 }
1960 </example> 1965 </example>
2026 <listitem> 2031 <listitem>
2027 полные имена 2032 полные имена
2028 </listitem> 2033 </listitem>
2029 2034
2030 <listitem> 2035 <listitem>
2031 имена с маской в начале имени, например “<code>*.example.com</code>” 2036 имена с маской в начале имени, например “<literal>*.example.com</literal>”
2032 </listitem> 2037 </listitem>
2033 2038
2034 <listitem> 2039 <listitem>
2035 имена с маской в конце имени, например “<code>mail.*</code>” 2040 имена с маской в конце имени, например “<literal>mail.*</literal>”
2036 </listitem> 2041 </listitem>
2037 2042
2038 <listitem> 2043 <listitem>
2039 регулярные выражения 2044 регулярные выражения
2040 </listitem> 2045 </listitem>
2044 2049
2045 </directive> 2050 </directive>
2046 2051
2047 2052
2048 <directive name="server_name_in_redirect"> 2053 <directive name="server_name_in_redirect">
2049 <syntax><value>on</value> | <value>off</value></syntax> 2054 <syntax><literal>on</literal> | <literal>off</literal></syntax>
2050 <default>off</default> 2055 <default>off</default>
2051 <context>http</context> 2056 <context>http</context>
2052 <context>server</context> 2057 <context>server</context>
2053 <context>location</context> 2058 <context>location</context>
2054 2059
2067 2072
2068 </directive> 2073 </directive>
2069 2074
2070 2075
2071 <directive name="server_names_hash_bucket_size"> 2076 <directive name="server_names_hash_bucket_size">
2072 <syntax><argument>размер</argument></syntax> 2077 <syntax><value>размер</value></syntax>
2073 <default>32|64|128</default> 2078 <default>32|64|128</default>
2074 <context>http</context> 2079 <context>http</context>
2075 2080
2076 <para> 2081 <para>
2077 Задаёт размер корзины в хэш-таблицах имён серверов. 2082 Задаёт размер корзины в хэш-таблицах имён серверов.
2082 2087
2083 </directive> 2088 </directive>
2084 2089
2085 2090
2086 <directive name="server_names_hash_max_size"> 2091 <directive name="server_names_hash_max_size">
2087 <syntax><argument>размер</argument></syntax> 2092 <syntax><value>размер</value></syntax>
2088 <default>512</default> 2093 <default>512</default>
2089 <context>http</context> 2094 <context>http</context>
2090 2095
2091 <para> 2096 <para>
2092 Задаёт максимальный <argument>размер</argument> хэш-таблиц имён серверов. 2097 Задаёт максимальный <value>размер</value> хэш-таблиц имён серверов.
2093 Подробнее смотрите в документе по 2098 Подробнее смотрите в документе по
2094 <link doc="../hash.xml">настройке хэшей</link>. 2099 <link doc="../hash.xml">настройке хэшей</link>.
2095 </para> 2100 </para>
2096 2101
2097 </directive> 2102 </directive>
2098 2103
2099 2104
2100 <directive name="server_tokens"> 2105 <directive name="server_tokens">
2101 <syntax><value>on</value> | <value>off</value></syntax> 2106 <syntax><literal>on</literal> | <literal>off</literal></syntax>
2102 <default>on</default> 2107 <default>on</default>
2103 <context>http</context> 2108 <context>http</context>
2104 <context>server</context> 2109 <context>server</context>
2105 <context>location</context> 2110 <context>location</context>
2106 2111
2111 2116
2112 </directive> 2117 </directive>
2113 2118
2114 2119
2115 <directive name="tcp_nodelay"> 2120 <directive name="tcp_nodelay">
2116 <syntax><value>on</value> | <value>off</value></syntax> 2121 <syntax><literal>on</literal> | <literal>off</literal></syntax>
2117 <default>on</default> 2122 <default>on</default>
2118 <context>http</context> 2123 <context>http</context>
2119 <context>server</context> 2124 <context>server</context>
2120 <context>location</context> 2125 <context>location</context>
2121 2126
2126 2131
2127 </directive> 2132 </directive>
2128 2133
2129 2134
2130 <directive name="tcp_nopush"> 2135 <directive name="tcp_nopush">
2131 <syntax><value>on</value> | <value>off</value></syntax> 2136 <syntax><literal>on</literal> | <literal>off</literal></syntax>
2132 <default>off</default> 2137 <default>off</default>
2133 <context>http</context> 2138 <context>http</context>
2134 <context>server</context> 2139 <context>server</context>
2135 <context>location</context> 2140 <context>location</context>
2136 2141
2157 </directive> 2162 </directive>
2158 2163
2159 2164
2160 <directive name="try_files"> 2165 <directive name="try_files">
2161 <syntax> 2166 <syntax>
2162 <argument>файл</argument> ... 2167 <value>файл</value> ...
2163 <argument>uri</argument></syntax> 2168 <value>uri</value></syntax>
2164 <syntax> 2169 <syntax>
2165 <argument>файл</argument> ... 2170 <value>файл</value> ...
2166 =<argument>код</argument></syntax> 2171 =<value>код</value></syntax>
2167 <default/> 2172 <default/>
2168 <context>server</context> 2173 <context>server</context>
2169 <context>location</context> 2174 <context>location</context>
2170 2175
2171 <para> 2176 <para>
2172 Проверяет существование файлов в заданном порядке и использует 2177 Проверяет существование файлов в заданном порядке и использует
2173 для обработки запроса первый найденный файл, причём обработка 2178 для обработки запроса первый найденный файл, причём обработка
2174 делается в контексте этого же location'а. 2179 делается в контексте этого же location'а.
2175 Путь к файлу строится из аргумента <argument>файл</argument> 2180 Путь к файлу строится из параметра <value>файл</value>
2176 в соответствии с директивами 2181 в соответствии с директивами
2177 <link id="root"/> и <link id="alias"/>. 2182 <link id="root"/> и <link id="alias"/>.
2178 С помощью слэша в конце имени можно проверить существование каталога, 2183 С помощью слэша в конце имени можно проверить существование каталога,
2179 например, “<code>$uri/</code>”. 2184 например, “<literal>$uri/</literal>”.
2180 В случае, если ни один файл не найден, то делается внутреннее 2185 В случае, если ни один файл не найден, то делается внутреннее
2181 перенаправление на <argument>uri</argument>, заданный последним аргументом. 2186 перенаправление на <value>uri</value>, заданный последним параметром.
2182 Например: 2187 Например:
2183 <example> 2188 <example>
2184 location /images/ { 2189 location /images/ {
2185 try_files $uri /images/default.gif; 2190 try_files $uri /images/default.gif;
2186 } 2191 }
2187 2192
2188 location = /images/default.gif { 2193 location = /images/default.gif {
2189 expires 30s; 2194 expires 30s;
2190 } 2195 }
2191 </example> 2196 </example>
2192 Последний аргумент может также указывать на именованный location, 2197 Последний параметр может также указывать на именованный location,
2193 смотрите примеры ниже. 2198 смотрите примеры ниже.
2194 С версии 0.7.51 последний аргумент может также быть кодом: 2199 С версии 0.7.51 последний параметр может также быть кодом:
2195 <example> 2200 <example>
2196 location / { 2201 location / {
2197 try_files $uri $uri/index.html $uri.html =404; 2202 try_files $uri $uri/index.html $uri.html =404;
2198 } 2203 }
2199 </example> 2204 </example>
2241 fastcgi_param QUERY_STRING q=$uri&amp;$args; 2246 fastcgi_param QUERY_STRING q=$uri&amp;$args;
2242 2247
2243 ... прочие fastcgi_param 2248 ... прочие fastcgi_param
2244 } 2249 }
2245 </example> 2250 </example>
2246 В следующем примере директива <code>try_files</code> 2251 В следующем примере директива <literal>try_files</literal>
2247 <example> 2252 <example>
2248 location / { 2253 location / {
2249 try_files $uri $uri/ @drupal; 2254 try_files $uri $uri/ @drupal;
2250 } 2255 }
2251 </example> 2256 </example>
2266 fastcgi_param SCRIPT_FILENAME /path/to$fastcgi_script_name; 2271 fastcgi_param SCRIPT_FILENAME /path/to$fastcgi_script_name;
2267 2272
2268 ... 2273 ...
2269 } 2274 }
2270 </example> 2275 </example>
2271 <code>try_files</code> проверяет существование PHP-файла, 2276 <literal>try_files</literal> проверяет существование PHP-файла,
2272 прежде чем передать запрос FastCGI-серверу. 2277 прежде чем передать запрос FastCGI-серверу.
2273 </para> 2278 </para>
2274 2279
2275 <para> 2280 <para>
2276 Пример использования вместе с Wordpress и Joomla: 2281 Пример использования вместе с Wordpress и Joomla:
2329 и находится в файле <path>conf/mime.types</path>. 2334 и находится в файле <path>conf/mime.types</path>.
2330 </para> 2335 </para>
2331 2336
2332 <para> 2337 <para>
2333 Для того, чтобы для определённого location'а для всех ответов 2338 Для того, чтобы для определённого location'а для всех ответов
2334 выдавался MIME-тип “<code>application/octet-stream</code>”, 2339 выдавался MIME-тип “<literal>application/octet-stream</literal>”,
2335 можно использовать следующее: 2340 можно использовать следующее:
2336 <example> 2341 <example>
2337 location /download/ { 2342 location /download/ {
2338 types { } 2343 types { }
2339 default_type application/octet-stream; 2344 default_type application/octet-stream;
2343 2348
2344 </directive> 2349 </directive>
2345 2350
2346 2351
2347 <directive name="types_hash_bucket_size"> 2352 <directive name="types_hash_bucket_size">
2348 <syntax><argument>размер</argument></syntax> 2353 <syntax><value>размер</value></syntax>
2349 <default>32|64|128</default> 2354 <default>32|64|128</default>
2350 <context>http</context> 2355 <context>http</context>
2351 <context>server</context> 2356 <context>server</context>
2352 <context>location</context> 2357 <context>location</context>
2353 2358
2360 2365
2361 </directive> 2366 </directive>
2362 2367
2363 2368
2364 <directive name="types_hash_max_size"> 2369 <directive name="types_hash_max_size">
2365 <syntax><argument>размер</argument></syntax> 2370 <syntax><value>размер</value></syntax>
2366 <default>1024</default> 2371 <default>1024</default>
2367 <context>http</context> 2372 <context>http</context>
2368 <context>server</context> 2373 <context>server</context>
2369 <context>location</context> 2374 <context>location</context>
2370 2375
2371 <para> 2376 <para>
2372 Задаёт максимальный <argument>размер</argument> хэш-таблиц типов. 2377 Задаёт максимальный <value>размер</value> хэш-таблиц типов.
2373 Подробнее смотрите в документе по 2378 Подробнее смотрите в документе по
2374 <link doc="../hash.xml">настройке хэшей</link>. 2379 <link doc="../hash.xml">настройке хэшей</link>.
2375 </para> 2380 </para>
2376 2381
2377 </directive> 2382 </directive>
2378 2383
2379 2384
2380 <directive name="underscores_in_headers"> 2385 <directive name="underscores_in_headers">
2381 <syntax><value>on</value> | <value>off</value></syntax> 2386 <syntax><literal>on</literal> | <literal>off</literal></syntax>
2382 <default>off</default> 2387 <default>off</default>
2383 <context>http</context> 2388 <context>http</context>
2384 <context>server</context> 2389 <context>server</context>
2385 2390
2386 <para> 2391 <para>
2393 2398
2394 </directive> 2399 </directive>
2395 2400
2396 2401
2397 <directive name="variables_hash_bucket_size"> 2402 <directive name="variables_hash_bucket_size">
2398 <syntax><argument>размер</argument></syntax> 2403 <syntax><value>размер</value></syntax>
2399 <default>64</default> 2404 <default>64</default>
2400 <context>http</context> 2405 <context>http</context>
2401 2406
2402 <para> 2407 <para>
2403 Задаёт размер корзины в хэш-таблице переменных. 2408 Задаёт размер корзины в хэш-таблице переменных.
2407 2412
2408 </directive> 2413 </directive>
2409 2414
2410 2415
2411 <directive name="variables_hash_max_size"> 2416 <directive name="variables_hash_max_size">
2412 <syntax><argument>размер</argument></syntax> 2417 <syntax><value>размер</value></syntax>
2413 <default>512</default> 2418 <default>512</default>
2414 <context>http</context> 2419 <context>http</context>
2415 2420
2416 <para> 2421 <para>
2417 Задаёт максимальный <argument>размер</argument> хэш-таблицы переменных. 2422 Задаёт максимальный <value>размер</value> хэш-таблицы переменных.
2418 Подробнее смотрите в документе по 2423 Подробнее смотрите в документе по
2419 <link doc="../hash.xml">настройке хэшей</link>. 2424 <link doc="../hash.xml">настройке хэшей</link>.
2420 </para> 2425 </para>
2421 2426
2422 </directive> 2427 </directive>
2424 </section> 2429 </section>
2425 2430
2426 <section id="variables" name="Встроенные переменные"> 2431 <section id="variables" name="Встроенные переменные">
2427 2432
2428 <para> 2433 <para>
2429 Модуль <code>ngx_http_core_module</code> поддерживает встроенные переменные, 2434 Модуль <literal>ngx_http_core_module</literal> поддерживает встроенные переменные,
2430 имена которых совпадают с именами переменных веб-сервера Apache. 2435 имена которых совпадают с именами переменных веб-сервера Apache.
2431 Прежде всего, это переменные, представляющие из себя поля заголовка 2436 Прежде всего, это переменные, представляющие из себя поля заголовка
2432 запроса клиента, такие как <var>$http_user_agent</var>, <var>$http_cookie</var> 2437 запроса клиента, такие как <var>$http_user_agent</var>, <var>$http_cookie</var>
2433 и тому подобное. 2438 и тому подобное.
2434 Кроме того, есть и другие переменные: 2439 Кроме того, есть и другие переменные:
2435 <list type="tag"> 2440 <list type="tag">
2436 2441
2437 <tag-name><var>$arg_</var><argument>имя</argument></tag-name> 2442 <tag-name><var>$arg_</var><value>имя</value></tag-name>
2438 <tag-desc> 2443 <tag-desc>
2439 аргумент <argument>имя</argument> в строке запроса 2444 аргумент <value>имя</value> в строке запроса
2440 </tag-desc> 2445 </tag-desc>
2441 2446
2442 <tag-name><var>$args</var></tag-name> 2447 <tag-name><var>$args</var></tag-name>
2443 <tag-desc> 2448 <tag-desc>
2444 аргументы в строке запроса 2449 аргументы в строке запроса
2462 <tag-name><var>$content_type</var></tag-name> 2467 <tag-name><var>$content_type</var></tag-name>
2463 <tag-desc> 2468 <tag-desc>
2464 поле <header>Content-Type</header> заголовка запроса 2469 поле <header>Content-Type</header> заголовка запроса
2465 </tag-desc> 2470 </tag-desc>
2466 2471
2467 <tag-name><var>$cookie_</var><argument>имя</argument></tag-name> 2472 <tag-name><var>$cookie_</var><value>имя</value></tag-name>
2468 <tag-desc> 2473 <tag-desc>
2469 cookie <argument>имя</argument> 2474 cookie <value>имя</value>
2470 </tag-desc> 2475 </tag-desc>
2471 2476
2472 <tag-name><var>$document_root</var></tag-name> 2477 <tag-name><var>$document_root</var></tag-name>
2473 <tag-desc> 2478 <tag-desc>
2474 значение директивы <link id="root"/> для текущего запроса 2479 значение директивы <link id="root"/> для текущего запроса
2488 <tag-name><var>$hostname</var></tag-name> 2493 <tag-name><var>$hostname</var></tag-name>
2489 <tag-desc> 2494 <tag-desc>
2490 имя хоста 2495 имя хоста
2491 </tag-desc> 2496 </tag-desc>
2492 2497
2493 <tag-name><var>$http_</var><argument>имя</argument></tag-name> 2498 <tag-name><var>$http_</var><value>имя</value></tag-name>
2494 <tag-desc> 2499 <tag-desc>
2495 поле <argument>имя</argument> заголовка запроса 2500 поле <value>имя</value> заголовка запроса
2496 </tag-desc> 2501 </tag-desc>
2497 2502
2498 <tag-name><var>$https</var></tag-name> 2503 <tag-name><var>$https</var></tag-name>
2499 <tag-desc> 2504 <tag-desc>
2500 “<code>on</code>” 2505 “<literal>on</literal>”
2501 если соединение работает в режиме SSL, 2506 если соединение работает в режиме SSL,
2502 либо пустая строка 2507 либо пустая строка
2503 </tag-desc> 2508 </tag-desc>
2504 2509
2505 <tag-name><var>$is_args</var></tag-name> 2510 <tag-name><var>$is_args</var></tag-name>
2506 <tag-desc> 2511 <tag-desc>
2507 “<code>?</code>”, если в строке запроса есть аргументы, 2512 “<literal>?</literal>”, если в строке запроса есть аргументы,
2508 и пустая строка, если их нет 2513 и пустая строка, если их нет
2509 </tag-desc> 2514 </tag-desc>
2510 2515
2511 <tag-name><var>$limit_rate</var></tag-name> 2516 <tag-name><var>$limit_rate</var></tag-name>
2512 <tag-desc> 2517 <tag-desc>
2586 </para> 2591 </para>
2587 </tag-desc> 2592 </tag-desc>
2588 2593
2589 <tag-name><var>$request_completion</var></tag-name> 2594 <tag-name><var>$request_completion</var></tag-name>
2590 <tag-desc> 2595 <tag-desc>
2591 “<code>OK</code>” если запрос завершился, 2596 “<literal>OK</literal>” если запрос завершился,
2592 либо пустая строка 2597 либо пустая строка
2593 </tag-desc> 2598 </tag-desc>
2594 2599
2595 <tag-name><var>$request_filename</var></tag-name> 2600 <tag-name><var>$request_filename</var></tag-name>
2596 <tag-desc> 2601 <tag-desc>
2599 </tag-desc> 2604 </tag-desc>
2600 2605
2601 <tag-name><var>$request_method</var></tag-name> 2606 <tag-name><var>$request_method</var></tag-name>
2602 <tag-desc> 2607 <tag-desc>
2603 метод запроса, обычно 2608 метод запроса, обычно
2604 “<code>GET</code>” или “<code>POST</code>” 2609 “<literal>GET</literal>” или “<literal>POST</literal>”
2605 </tag-desc> 2610 </tag-desc>
2606 2611
2607 <tag-name><var>$request_uri</var></tag-name> 2612 <tag-name><var>$request_uri</var></tag-name>
2608 <tag-desc> 2613 <tag-desc>
2609 оригинальный URI запроса целиком (с аргументами) 2614 оригинальный URI запроса целиком (с аргументами)
2610 </tag-desc> 2615 </tag-desc>
2611 2616
2612 <tag-name><var>$scheme</var></tag-name> 2617 <tag-name><var>$scheme</var></tag-name>
2613 <tag-desc> 2618 <tag-desc>
2614 схема запроса, “<code>http</code>” или “<code>https</code>” 2619 схема запроса, “<literal>http</literal>” или “<literal>https</literal>”
2615 </tag-desc> 2620 </tag-desc>
2616 2621
2617 <tag-name><var>$sent_http_</var><argument>имя</argument></tag-name> 2622 <tag-name><var>$sent_http_</var><value>имя</value></tag-name>
2618 <tag-desc> 2623 <tag-desc>
2619 поле <argument>имя</argument> заголовка ответа 2624 поле <value>имя</value> заголовка ответа
2620 </tag-desc> 2625 </tag-desc>
2621 2626
2622 <tag-name><var>$server_addr</var></tag-name> 2627 <tag-name><var>$server_addr</var></tag-name>
2623 <tag-desc> 2628 <tag-desc>
2624 адрес сервера, принявшего запрос 2629 адрес сервера, принявшего запрос
2625 <para> 2630 <para>
2626 Получение значения этой переменной обычно требует одного системного вызова. 2631 Получение значения этой переменной обычно требует одного системного вызова.
2627 Чтобы избежать системного вызова, в директивах <link id="listen"/> 2632 Чтобы избежать системного вызова, в директивах <link id="listen"/>
2628 следует указывать адреса и использовать параметр <parameter>bind</parameter>. 2633 следует указывать адреса и использовать параметр <literal>bind</literal>.
2629 </para> 2634 </para>
2630 </tag-desc> 2635 </tag-desc>
2631 2636
2632 <tag-name><var>$server_name</var></tag-name> 2637 <tag-name><var>$server_name</var></tag-name>
2633 <tag-desc> 2638 <tag-desc>
2640 </tag-desc> 2645 </tag-desc>
2641 2646
2642 <tag-name><var>$server_protocol</var></tag-name> 2647 <tag-name><var>$server_protocol</var></tag-name>
2643 <tag-desc> 2648 <tag-desc>
2644 протокол сервера, обычно 2649 протокол сервера, обычно
2645 “<code>HTTP/1.0</code>” 2650 “<literal>HTTP/1.0</literal>”
2646 или 2651 или
2647 “<code>HTTP/1.1</code>” 2652 “<literal>HTTP/1.1</literal>”
2648 </tag-desc> 2653 </tag-desc>
2649 2654
2650 <tag-name><var>$uri</var></tag-name> 2655 <tag-name><var>$uri</var></tag-name>
2651 <tag-desc> 2656 <tag-desc>
2652 текущий URI запроса 2657 текущий URI запроса