Mercurial > hg > nginx-site
annotate xml/ru/docs/http/ngx_http_referer_module.xml @ 580:be54c443235a
Added copyright markers to documentation sources.
author | Ruslan Ermilov <ru@nginx.com> |
---|---|
date | Tue, 10 Jul 2012 12:59:42 +0000 |
parents | 3878cc99d454 |
children | 764fbac1b8b4 |
rev | line source |
---|---|
222
bfe3eff81d04
Removed redundant encoding specification.
Ruslan Ermilov <ru@nginx.com>
parents:
110
diff
changeset
|
1 <?xml version="1.0"?> |
76
4a4caa566120
Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
2 |
580
be54c443235a
Added copyright markers to documentation sources.
Ruslan Ermilov <ru@nginx.com>
parents:
501
diff
changeset
|
3 <!-- |
be54c443235a
Added copyright markers to documentation sources.
Ruslan Ermilov <ru@nginx.com>
parents:
501
diff
changeset
|
4 Copyright (C) Igor Sysoev |
be54c443235a
Added copyright markers to documentation sources.
Ruslan Ermilov <ru@nginx.com>
parents:
501
diff
changeset
|
5 Copyright (C) Nginx, Inc. |
be54c443235a
Added copyright markers to documentation sources.
Ruslan Ermilov <ru@nginx.com>
parents:
501
diff
changeset
|
6 --> |
be54c443235a
Added copyright markers to documentation sources.
Ruslan Ermilov <ru@nginx.com>
parents:
501
diff
changeset
|
7 |
76
4a4caa566120
Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
8 <!DOCTYPE module SYSTEM "../../../../dtd/module.dtd"> |
4a4caa566120
Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
9 |
356 | 10 <module name="Модуль ngx_http_referer_module" |
76
4a4caa566120
Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
11 link="/ru/docs/http/ngx_http_referer_module.html" |
4a4caa566120
Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
12 lang="ru"> |
4a4caa566120
Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
13 |
110
40eec261c2a6
Added proper support for anonymous sections, notably for the summary.
Ruslan Ermilov <ru@nginx.com>
parents:
102
diff
changeset
|
14 <section id="summary"> |
76
4a4caa566120
Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
15 |
4a4caa566120
Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
16 <para> |
356 | 17 Модуль <literal>ngx_http_referer_module</literal> позволяет блокировать доступ |
18 к сайту для запросов с неверными значениями поля <header>Referer</header> в | |
19 заголовке. | |
20 Следует иметь в виду, что подделать запрос с нужным значением поля | |
21 <header>Referer</header> не составляет большого труда, поэтому цель | |
22 использования данного модуля заключается не в стопроцентном блокировании | |
23 подобных запросов, а в блокировании массового потока запросов, сделанных | |
24 обычными браузерами. | |
25 Нужно также учитывать, что обычные браузеры могут не передавать поле | |
26 <header>Referer</header> даже для верных запросов. | |
76
4a4caa566120
Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
27 </para> |
4a4caa566120
Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
28 |
4a4caa566120
Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
29 </section> |
4a4caa566120
Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
30 |
4a4caa566120
Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
31 |
356 | 32 <section id="example" name="Пример конфигурации"> |
76
4a4caa566120
Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
33 |
4a4caa566120
Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
34 <para> |
4a4caa566120
Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
35 <example> |
356 | 36 valid_referers none blocked server_names |
490
9913f1d51c07
Replaced "nginx" domain names with example domains.
Ruslan Ermilov <ru@nginx.com>
parents:
364
diff
changeset
|
37 *.example.com example.* www.example.org/galleries/ |
356 | 38 ~\.google\.; |
76
4a4caa566120
Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
39 |
356 | 40 if ($invalid_referer) { |
41 return 403; | |
42 } | |
76
4a4caa566120
Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
43 </example> |
4a4caa566120
Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
44 </para> |
4a4caa566120
Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
45 |
4a4caa566120
Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
46 </section> |
4a4caa566120
Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
47 |
4a4caa566120
Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
48 |
356 | 49 <section id="directives" name="Директивы"> |
76
4a4caa566120
Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
50 |
501
3878cc99d454
Bring ngx_http_referer_module docs up to date, including:
Ruslan Ermilov <ru@nginx.com>
parents:
490
diff
changeset
|
51 <directive name="referer_hash_bucket_size"> |
3878cc99d454
Bring ngx_http_referer_module docs up to date, including:
Ruslan Ermilov <ru@nginx.com>
parents:
490
diff
changeset
|
52 <syntax><value>размер</value></syntax> |
3878cc99d454
Bring ngx_http_referer_module docs up to date, including:
Ruslan Ermilov <ru@nginx.com>
parents:
490
diff
changeset
|
53 <default>64</default> |
3878cc99d454
Bring ngx_http_referer_module docs up to date, including:
Ruslan Ermilov <ru@nginx.com>
parents:
490
diff
changeset
|
54 <context>server</context> |
3878cc99d454
Bring ngx_http_referer_module docs up to date, including:
Ruslan Ermilov <ru@nginx.com>
parents:
490
diff
changeset
|
55 <context>location</context> |
3878cc99d454
Bring ngx_http_referer_module docs up to date, including:
Ruslan Ermilov <ru@nginx.com>
parents:
490
diff
changeset
|
56 <appeared-in>1.0.5</appeared-in> |
3878cc99d454
Bring ngx_http_referer_module docs up to date, including:
Ruslan Ermilov <ru@nginx.com>
parents:
490
diff
changeset
|
57 |
3878cc99d454
Bring ngx_http_referer_module docs up to date, including:
Ruslan Ermilov <ru@nginx.com>
parents:
490
diff
changeset
|
58 <para> |
3878cc99d454
Bring ngx_http_referer_module docs up to date, including:
Ruslan Ermilov <ru@nginx.com>
parents:
490
diff
changeset
|
59 Задаёт размер корзины хэш-таблиц со значениями <header>Referer</header>. |
3878cc99d454
Bring ngx_http_referer_module docs up to date, including:
Ruslan Ermilov <ru@nginx.com>
parents:
490
diff
changeset
|
60 Подробнее смотрите в документе по |
3878cc99d454
Bring ngx_http_referer_module docs up to date, including:
Ruslan Ermilov <ru@nginx.com>
parents:
490
diff
changeset
|
61 <link doc="../hash.xml">настройке хэшей</link>. |
3878cc99d454
Bring ngx_http_referer_module docs up to date, including:
Ruslan Ermilov <ru@nginx.com>
parents:
490
diff
changeset
|
62 </para> |
3878cc99d454
Bring ngx_http_referer_module docs up to date, including:
Ruslan Ermilov <ru@nginx.com>
parents:
490
diff
changeset
|
63 |
3878cc99d454
Bring ngx_http_referer_module docs up to date, including:
Ruslan Ermilov <ru@nginx.com>
parents:
490
diff
changeset
|
64 </directive> |
3878cc99d454
Bring ngx_http_referer_module docs up to date, including:
Ruslan Ermilov <ru@nginx.com>
parents:
490
diff
changeset
|
65 |
3878cc99d454
Bring ngx_http_referer_module docs up to date, including:
Ruslan Ermilov <ru@nginx.com>
parents:
490
diff
changeset
|
66 |
3878cc99d454
Bring ngx_http_referer_module docs up to date, including:
Ruslan Ermilov <ru@nginx.com>
parents:
490
diff
changeset
|
67 <directive name="referer_hash_max_size"> |
3878cc99d454
Bring ngx_http_referer_module docs up to date, including:
Ruslan Ermilov <ru@nginx.com>
parents:
490
diff
changeset
|
68 <syntax><value>размер</value></syntax> |
3878cc99d454
Bring ngx_http_referer_module docs up to date, including:
Ruslan Ermilov <ru@nginx.com>
parents:
490
diff
changeset
|
69 <default>2048</default> |
3878cc99d454
Bring ngx_http_referer_module docs up to date, including:
Ruslan Ermilov <ru@nginx.com>
parents:
490
diff
changeset
|
70 <context>server</context> |
3878cc99d454
Bring ngx_http_referer_module docs up to date, including:
Ruslan Ermilov <ru@nginx.com>
parents:
490
diff
changeset
|
71 <context>location</context> |
3878cc99d454
Bring ngx_http_referer_module docs up to date, including:
Ruslan Ermilov <ru@nginx.com>
parents:
490
diff
changeset
|
72 <appeared-in>1.0.5</appeared-in> |
3878cc99d454
Bring ngx_http_referer_module docs up to date, including:
Ruslan Ermilov <ru@nginx.com>
parents:
490
diff
changeset
|
73 |
3878cc99d454
Bring ngx_http_referer_module docs up to date, including:
Ruslan Ermilov <ru@nginx.com>
parents:
490
diff
changeset
|
74 <para> |
3878cc99d454
Bring ngx_http_referer_module docs up to date, including:
Ruslan Ermilov <ru@nginx.com>
parents:
490
diff
changeset
|
75 Задаёт максимальный <value>размер</value> хэш-таблиц со значениями |
3878cc99d454
Bring ngx_http_referer_module docs up to date, including:
Ruslan Ermilov <ru@nginx.com>
parents:
490
diff
changeset
|
76 <header>Referer</header>. |
3878cc99d454
Bring ngx_http_referer_module docs up to date, including:
Ruslan Ermilov <ru@nginx.com>
parents:
490
diff
changeset
|
77 Подробнее смотрите в документе по |
3878cc99d454
Bring ngx_http_referer_module docs up to date, including:
Ruslan Ermilov <ru@nginx.com>
parents:
490
diff
changeset
|
78 <link doc="../hash.xml">настройке хэшей</link>. |
3878cc99d454
Bring ngx_http_referer_module docs up to date, including:
Ruslan Ermilov <ru@nginx.com>
parents:
490
diff
changeset
|
79 </para> |
3878cc99d454
Bring ngx_http_referer_module docs up to date, including:
Ruslan Ermilov <ru@nginx.com>
parents:
490
diff
changeset
|
80 |
3878cc99d454
Bring ngx_http_referer_module docs up to date, including:
Ruslan Ermilov <ru@nginx.com>
parents:
490
diff
changeset
|
81 </directive> |
3878cc99d454
Bring ngx_http_referer_module docs up to date, including:
Ruslan Ermilov <ru@nginx.com>
parents:
490
diff
changeset
|
82 |
3878cc99d454
Bring ngx_http_referer_module docs up to date, including:
Ruslan Ermilov <ru@nginx.com>
parents:
490
diff
changeset
|
83 |
76
4a4caa566120
Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
84 <directive name="valid_referers"> |
271 | 85 <syntax> |
364 | 86 <literal>none</literal> | |
87 <literal>blocked</literal> | | |
88 <literal>server_names</literal> | | |
89 <value>строка</value> | |
90 ...</syntax> | |
99
1d315ef37215
The case <default/> is now language-agnostic.
Ruslan Ermilov <ru@nginx.com>
parents:
76
diff
changeset
|
91 <default/> |
356 | 92 <context>server</context> |
93 <context>location</context> | |
76
4a4caa566120
Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
94 |
4a4caa566120
Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
95 <para> |
356 | 96 Задаёт значения поля <header>Referer</header> заголовка запроса, при |
97 которых встроенная переменная <var>$invalid_referer</var> будет иметь | |
501
3878cc99d454
Bring ngx_http_referer_module docs up to date, including:
Ruslan Ermilov <ru@nginx.com>
parents:
490
diff
changeset
|
98 пустую строку в качестве значения. |
3878cc99d454
Bring ngx_http_referer_module docs up to date, including:
Ruslan Ermilov <ru@nginx.com>
parents:
490
diff
changeset
|
99 В противном случае значение переменной равно “<literal>1</literal>”. |
3878cc99d454
Bring ngx_http_referer_module docs up to date, including:
Ruslan Ermilov <ru@nginx.com>
parents:
490
diff
changeset
|
100 Поиск совпадения производится без учёта регистра символов. |
76
4a4caa566120
Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
101 </para> |
4a4caa566120
Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
102 |
4a4caa566120
Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
103 <para> |
4a4caa566120
Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
104 Параметры могут быть следующие: |
356 | 105 <list type="tag"> |
76
4a4caa566120
Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
106 |
356 | 107 <tag-name><literal>none</literal></tag-name> |
108 <tag-desc> | |
109 поле <header>Referer</header> в заголовке запроса отсутствует; | |
110 </tag-desc> | |
76
4a4caa566120
Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
111 |
356 | 112 <tag-name><literal>blocked</literal></tag-name> |
113 <tag-desc> | |
114 поле <header>Referer</header> в заголовке запроса присутствует, | |
115 но его значение удалено межсетевым экраном (firewall) или прокси-сервером; | |
116 к таким значениям относятся строки, не начинающиеся на | |
501
3878cc99d454
Bring ngx_http_referer_module docs up to date, including:
Ruslan Ermilov <ru@nginx.com>
parents:
490
diff
changeset
|
117 “<literal>http://</literal>” или “<literal>https://</literal>”; |
356 | 118 </tag-desc> |
76
4a4caa566120
Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
119 |
356 | 120 <tag-name><literal>server_names</literal></tag-name> |
121 <tag-desc> | |
122 в поле <header>Referer</header> заголовка запроса указано одно | |
76
4a4caa566120
Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
123 из имён сервера; |
356 | 124 </tag-desc> |
76
4a4caa566120
Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
125 |
356 | 126 <tag-name>произвольная строка</tag-name> |
127 <tag-desc> | |
128 задаёт имя сервера и необязательное начало URI. | |
129 В начале или конце имени сервера может быть “<literal>*</literal>”. | |
130 При проверке порт сервера в поле <header>Referer</header> игнорируется; | |
131 </tag-desc> | |
76
4a4caa566120
Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
132 |
356 | 133 <tag-name>регулярное выражение</tag-name> |
134 <tag-desc> | |
135 в начале должен быть символ “<literal>~</literal>”. | |
76
4a4caa566120
Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
136 Необходимо учитывать, что на совпадение с выражением будет проверяться |
501
3878cc99d454
Bring ngx_http_referer_module docs up to date, including:
Ruslan Ermilov <ru@nginx.com>
parents:
490
diff
changeset
|
137 текст, начинающийся после “<literal>http://</literal>” |
3878cc99d454
Bring ngx_http_referer_module docs up to date, including:
Ruslan Ermilov <ru@nginx.com>
parents:
490
diff
changeset
|
138 или “<literal>https://</literal>”. |
356 | 139 </tag-desc> |
76
4a4caa566120
Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
140 |
4a4caa566120
Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
141 </list> |
4a4caa566120
Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
142 </para> |
4a4caa566120
Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
143 |
4a4caa566120
Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
144 <para> |
356 | 145 Пример: |
76
4a4caa566120
Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
146 <example> |
356 | 147 valid_referers none blocked server_names |
490
9913f1d51c07
Replaced "nginx" domain names with example domains.
Ruslan Ermilov <ru@nginx.com>
parents:
364
diff
changeset
|
148 *.example.com example.* www.example.org/galleries/ |
356 | 149 ~\.google\.; |
76
4a4caa566120
Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
150 </example> |
4a4caa566120
Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
151 </para> |
4a4caa566120
Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
152 |
4a4caa566120
Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
153 </directive> |
4a4caa566120
Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
154 |
4a4caa566120
Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
155 </section> |
4a4caa566120
Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
156 |
4a4caa566120
Russian documentation import.
Maxim Dounin <mdounin@mdounin.ru>
parents:
diff
changeset
|
157 </module> |