Mercurial > hg > nginx-site
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 |