comparison xml/ru/docs/http/ngx_http_core_module.xml @ 679:9888364847b7

Documented status codes in the error_page directive.
author Vladimir Homutov <vl@nginx.com>
date Thu, 13 Sep 2012 08:02:40 +0000
parents c48c0936b4df
children a4648185190a
comparison
equal deleted inserted replaced
678:90c27a37f4ed 679:9888364847b7
8 <!DOCTYPE module SYSTEM "../../../../dtd/module.dtd"> 8 <!DOCTYPE module SYSTEM "../../../../dtd/module.dtd">
9 9
10 <module name="Модуль ngx_http_core_module" 10 <module name="Модуль ngx_http_core_module"
11 link="/ru/docs/http/ngx_http_core_module.html" 11 link="/ru/docs/http/ngx_http_core_module.html"
12 lang="ru" 12 lang="ru"
13 rev="4"> 13 rev="5">
14 14
15 <section id="directives" name="Директивы"> 15 <section id="directives" name="Директивы">
16 16
17 <directive name="aio"> 17 <directive name="aio">
18 <syntax> 18 <syntax>
566 <para> 566 <para>
567 Задаёт URI, который будет показываться для указанных ошибок. 567 Задаёт URI, который будет показываться для указанных ошибок.
568 Директивы <literal>error_page</literal> наследуются с предыдущего уровня 568 Директивы <literal>error_page</literal> наследуются с предыдущего уровня
569 при условии, что на данном уровне не описаны свои директивы 569 при условии, что на данном уровне не описаны свои директивы
570 <literal>error_page</literal>. 570 <literal>error_page</literal>.
571 В значении URI можно использовать переменные. 571 В значении <literal>uri</literal> можно использовать переменные.
572 </para> 572 </para>
573 573
574 <para> 574 <para>
575 Пример: 575 Пример:
576 <example> 576 <example>
577 error_page 404 /404.html; 577 error_page 404 /404.html;
578 error_page 502 503 504 /50x.html; 578 error_page 500 502 503 504 /50x.html;
579 error_page 403 http://example.com/forbidden.html; 579 </example>
580 </example> 580 </para>
581 </para> 581
582 582 <para>
583 <para> 583 Кроме того, можно поменять код ответа на другой,
584 Кроме того, можно поменять код ответа на другой, например: 584 используя синтаксис вида “<literal>=code</literal>”, например:
585 <example> 585 <example>
586 error_page 404 =200 /empty.gif; 586 error_page 404 =200 /empty.gif;
587 </example> 587 </example>
588 </para> 588 </para>
589 589
595 error_page 404 = /404.php; 595 error_page 404 = /404.php;
596 </example> 596 </example>
597 </para> 597 </para>
598 598
599 <para> 599 <para>
600 Если при перенаправлении не нужно менять URI, то можно перенаправить 600 Также существует возможность использовать перенаправления для обработки
601 ошибок:
602 <example>
603 error_page 403 http://example.com/forbidden.html;
604 error_page 404 =301 http://example.com/notfound.html;
605 </example>
606 В этому случае клиенту возвращается код ответа 302.
607 Его можно изменить только на один из кодов статуса, относящихся к
608 перенаправлениям (301, 302, 303 and 307).
609 </para>
610
611 <para>
612 Если при внутреннем перенаправлении не нужно менять URI, то можно передать
601 обработку ошибки в именованный location: 613 обработку ошибки в именованный location:
602 <example> 614 <example>
603 location / { 615 location / {
604 error_page 404 = @fallback; 616 error_page 404 = @fallback;
605 } 617 }
606 618
607 location @fallback { 619 location @fallback {
608 proxy_pass http://backend; 620 proxy_pass http://backend;
609 } 621 }
610 </example> 622 </example>
623 </para>
624
625 <para>
626 <note>
627 В случае возникновения ошибки при обработке <literal>uri</literal>
628 будет возвращен ответ с кодом HTTP статуса, отражающим последнюю
629 возникшую проблему.
630 </note>
611 </para> 631 </para>
612 632
613 </directive> 633 </directive>
614 634
615 635