Mercurial > hg > nginx-site
comparison xml/ru/docs/http/ngx_http_referer_module.xml @ 356:ccb8e9a12e2f
Revision.
author | Ruslan Ermilov <ru@nginx.com> |
---|---|
date | Wed, 25 Jan 2012 13:57:12 +0000 |
parents | b33d3f3cd8ca |
children | bb51d3e17dd0 |
comparison
equal
deleted
inserted
replaced
355:5d731825a6c2 | 356:ccb8e9a12e2f |
---|---|
1 <?xml version="1.0"?> | 1 <?xml version="1.0"?> |
2 | 2 |
3 <!DOCTYPE module SYSTEM "../../../../dtd/module.dtd"> | 3 <!DOCTYPE module SYSTEM "../../../../dtd/module.dtd"> |
4 | 4 |
5 <module name="Директивы модуля ngx_http_referer_module" | 5 <module name="Модуль ngx_http_referer_module" |
6 link="/ru/docs/http/ngx_http_referer_module.html" | 6 link="/ru/docs/http/ngx_http_referer_module.html" |
7 lang="ru"> | 7 lang="ru"> |
8 | 8 |
9 <section id="summary"> | 9 <section id="summary"> |
10 | 10 |
11 <para> | 11 <para> |
12 Модуль ngx_http_referer_module позволяет блокировать доступ | 12 Модуль <literal>ngx_http_referer_module</literal> позволяет блокировать доступ |
13 к сайту с неверными значениями строки "Referer" в заголовке запроса. | 13 к сайту для запросов с неверными значениями поля <header>Referer</header> в |
14 Следует иметь в виду, что подделать запрос с нужной строкой "Referer" | 14 заголовке. |
15 не составляет большого труда, поэтому цель использования данного модуля | 15 Следует иметь в виду, что подделать запрос с нужным значением поля |
16 заключается не в стопроцентном блокировании подобных запросов, | 16 <header>Referer</header> не составляет большого труда, поэтому цель |
17 а в блокировании массового потока запросов, сделанных обычными браузерами. | 17 использования данного модуля заключается не в стопроцентном блокировании |
18 Нужно также учитывать, что обычные браузеры могут не передавать строку | 18 подобных запросов, а в блокировании массового потока запросов, сделанных |
19 "Referer" даже для верных запросов. | 19 обычными браузерами. |
20 Нужно также учитывать, что обычные браузеры могут не передавать поле | |
21 <header>Referer</header> даже для верных запросов. | |
20 </para> | 22 </para> |
21 | 23 |
22 </section> | 24 </section> |
23 | 25 |
24 | 26 |
25 <section name="Пример конфигурации" id="example"> | 27 <section id="example" name="Пример конфигурации"> |
26 | 28 |
27 <para> | 29 <para> |
28 <example> | 30 <example> |
29 valid_referers none blocked server_names | 31 valid_referers none blocked server_names |
30 *.example.com www.example.info/galleries/ | 32 *.example.com example.* www.example.info/galleries/ |
31 ~\.google\. ; | 33 ~\.google\.; |
32 | 34 |
33 if ($invalid_referer) { | 35 if ($invalid_referer) { |
34 return 403; | 36 return 403; |
35 } | 37 } |
36 </example> | 38 </example> |
37 </para> | 39 </para> |
38 | 40 |
39 </section> | 41 </section> |
40 | 42 |
41 | 43 |
42 <section name="Директивы" id="directives"> | 44 <section id="directives" name="Директивы"> |
43 | 45 |
44 <directive name="valid_referers"> | 46 <directive name="valid_referers"> |
45 <syntax> | 47 <syntax> |
46 <literal>none</literal> | | 48 <literal>none</literal> | |
47 <literal>blocked</literal> | | 49 <literal>blocked</literal> | |
48 <literal>server_names</literal> | | 50 <literal>server_names</literal> | |
49 <value>строка</value> | 51 <value>строка</value> |
50 ...</syntax> | 52 ...</syntax> |
51 <default/> | 53 <default/> |
52 <context>server, location</context> | 54 <context>server</context> |
55 <context>location</context> | |
53 | 56 |
54 <para> | 57 <para> |
55 Директива задаёт значения строки "Referer" в заголовке запроса, при | 58 Задаёт значения поля <header>Referer</header> заголовка запроса, при |
56 которых встроенная переменная $invalid_referer будет иметь значение 0. | 59 которых встроенная переменная <var>$invalid_referer</var> будет иметь |
60 значение 0. | |
57 </para> | 61 </para> |
58 | 62 |
59 <para> | 63 <para> |
60 Параметры могут быть следующие: | 64 Параметры могут быть следующие: |
61 <list type="bullet"> | 65 <list type="tag"> |
62 | 66 |
63 <listitem> | 67 <tag-name><literal>none</literal></tag-name> |
64 none — строка "Referer" в заголовке запроса отсутствует; | 68 <tag-desc> |
65 </listitem> | 69 поле <header>Referer</header> в заголовке запроса отсутствует; |
70 </tag-desc> | |
66 | 71 |
67 <listitem> | 72 <tag-name><literal>blocked</literal></tag-name> |
68 blocked — строка "Referer" в заголовке запроса присутствует, | 73 <tag-desc> |
69 но её значение удалено файрволлом или прокси-сервером; к таким строкам | 74 поле <header>Referer</header> в заголовке запроса присутствует, |
70 относятся строки, неначинающиеся на "http://"; | 75 но его значение удалено межсетевым экраном (firewall) или прокси-сервером; |
71 </listitem> | 76 к таким значениям относятся строки, не начинающиеся на |
77 “<literal>http://</literal>”; | |
78 </tag-desc> | |
72 | 79 |
73 <listitem> | 80 <tag-name><literal>server_names</literal></tag-name> |
74 server_names — в строке "Referer" в заголовке запроса указано одно | 81 <tag-desc> |
82 в поле <header>Referer</header> заголовка запроса указано одно | |
75 из имён сервера; | 83 из имён сервера; |
76 </listitem> | 84 </tag-desc> |
77 | 85 |
78 <listitem> | 86 <tag-name>произвольная строка</tag-name> |
79 произвольная строка — задаёт имя сервера и необязательное начало URI. | 87 <tag-desc> |
80 В начале или конце имени сервера может быть "*". | 88 задаёт имя сервера и необязательное начало URI. |
81 При проверке порт сервера в строке "Referer" игнорируется. | 89 В начале или конце имени сервера может быть “<literal>*</literal>”. |
82 </listitem> | 90 При проверке порт сервера в поле <header>Referer</header> игнорируется; |
91 </tag-desc> | |
83 | 92 |
84 <listitem> | 93 <tag-name>регулярное выражение</tag-name> |
85 регулярное выражение — в начале должен быть символ "~". | 94 <tag-desc> |
95 в начале должен быть символ “<literal>~</literal>”. | |
86 Необходимо учитывать, что на совпадение с выражением будет проверяться | 96 Необходимо учитывать, что на совпадение с выражением будет проверяться |
87 текст, начинающийся после "http://". | 97 текст, начинающийся после “<literal>http://</literal>”. |
88 </listitem> | 98 </tag-desc> |
89 | 99 |
90 </list> | 100 </list> |
91 </para> | 101 </para> |
92 | 102 |
93 <para> | 103 <para> |
94 Пример использования: | 104 Пример: |
95 <example> | 105 <example> |
96 valid_referers none blocked server_names | 106 valid_referers none blocked server_names |
97 *.example.com example.* www.example.info/galleries/ | 107 *.example.com example.* www.example.info/galleries/ |
98 ~\.google\. ; | 108 ~\.google\.; |
99 </example> | 109 </example> |
100 </para> | 110 </para> |
101 | 111 |
102 </directive> | 112 </directive> |
103 | 113 |