annotate xml/en/docs/http/ngx_http_map_module.xml @ 714:ec33576efaa5

Added note about minimal impact of declaring multiple variables (geo, map).
author Vladimir Homutov <vl@nginx.com>
date Tue, 09 Oct 2012 12:39:31 +0000
parents 77a3314c74a7
children 81ec181c084e
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
348
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
1 <?xml version="1.0"?>
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
2
580
be54c443235a Added copyright markers to documentation sources.
Ruslan Ermilov <ru@nginx.com>
parents: 572
diff changeset
3 <!--
be54c443235a Added copyright markers to documentation sources.
Ruslan Ermilov <ru@nginx.com>
parents: 572
diff changeset
4 Copyright (C) Igor Sysoev
be54c443235a Added copyright markers to documentation sources.
Ruslan Ermilov <ru@nginx.com>
parents: 572
diff changeset
5 Copyright (C) Nginx, Inc.
be54c443235a Added copyright markers to documentation sources.
Ruslan Ermilov <ru@nginx.com>
parents: 572
diff changeset
6 -->
be54c443235a Added copyright markers to documentation sources.
Ruslan Ermilov <ru@nginx.com>
parents: 572
diff changeset
7
348
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
8 <!DOCTYPE module SYSTEM "../../../../dtd/module.dtd">
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
9
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
10 <module name="Module ngx_http_map_module"
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
11 link="/en/docs/http/ngx_http_map_module.html"
589
764fbac1b8b4 Added document revision.
Ruslan Ermilov <ru@nginx.com>
parents: 580
diff changeset
12 lang="en"
764fbac1b8b4 Added document revision.
Ruslan Ermilov <ru@nginx.com>
parents: 580
diff changeset
13 rev="1">
348
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
14
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
15 <section id="summary">
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
16
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
17 <para>
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
18 The <literal>ngx_http_map_module</literal> module creates variables
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
19 whose values depend on values of other variables.
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
20 </para>
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
21
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
22 </section>
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
23
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
24
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
25 <section id="example" name="Example Configuration">
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
26
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
27 <para>
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
28 <example>
385
aef88cb1d75c Removed extraneous whitespace.
Ruslan Ermilov <ru@nginx.com>
parents: 348
diff changeset
29 map $http_host $name {
348
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
30 hostnames;
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
31
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
32 default 0;
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
33
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
34 example.com 1;
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
35 *.example.com 1;
490
9913f1d51c07 Replaced "nginx" domain names with example domains.
Ruslan Ermilov <ru@nginx.com>
parents: 385
diff changeset
36 example.org 2;
9913f1d51c07 Replaced "nginx" domain names with example domains.
Ruslan Ermilov <ru@nginx.com>
parents: 385
diff changeset
37 *.example.org 2;
9913f1d51c07 Replaced "nginx" domain names with example domains.
Ruslan Ermilov <ru@nginx.com>
parents: 385
diff changeset
38 .example.net 3;
348
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
39 wap.* 4;
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
40 }
572
17ceffcc7ffb Brought the ngx_http_map_module documentation up to date.
Ruslan Ermilov <ru@nginx.com>
parents: 490
diff changeset
41
17ceffcc7ffb Brought the ngx_http_map_module documentation up to date.
Ruslan Ermilov <ru@nginx.com>
parents: 490
diff changeset
42 map $http_user_agent $mobile {
17ceffcc7ffb Brought the ngx_http_map_module documentation up to date.
Ruslan Ermilov <ru@nginx.com>
parents: 490
diff changeset
43 default 0;
17ceffcc7ffb Brought the ngx_http_map_module documentation up to date.
Ruslan Ermilov <ru@nginx.com>
parents: 490
diff changeset
44 "~Opera Mini" 1;
17ceffcc7ffb Brought the ngx_http_map_module documentation up to date.
Ruslan Ermilov <ru@nginx.com>
parents: 490
diff changeset
45 }
348
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
46 </example>
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
47 </para>
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
48
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
49 </section>
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
50
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
51
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
52 <section id="directives" name="Directives">
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
53
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
54 <directive name="map">
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
55 <syntax block="yes">
572
17ceffcc7ffb Brought the ngx_http_map_module documentation up to date.
Ruslan Ermilov <ru@nginx.com>
parents: 490
diff changeset
56 <value>string</value>
17ceffcc7ffb Brought the ngx_http_map_module documentation up to date.
Ruslan Ermilov <ru@nginx.com>
parents: 490
diff changeset
57 <value>$variable</value></syntax>
348
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
58 <default/>
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
59 <context>http</context>
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
60
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
61 <para>
572
17ceffcc7ffb Brought the ngx_http_map_module documentation up to date.
Ruslan Ermilov <ru@nginx.com>
parents: 490
diff changeset
62 Creates a new variable whose value
17ceffcc7ffb Brought the ngx_http_map_module documentation up to date.
Ruslan Ermilov <ru@nginx.com>
parents: 490
diff changeset
63 depends on values of one or more of the source variables
17ceffcc7ffb Brought the ngx_http_map_module documentation up to date.
Ruslan Ermilov <ru@nginx.com>
parents: 490
diff changeset
64 specified in the first parameter.
17ceffcc7ffb Brought the ngx_http_map_module documentation up to date.
Ruslan Ermilov <ru@nginx.com>
parents: 490
diff changeset
65 <note>
17ceffcc7ffb Brought the ngx_http_map_module documentation up to date.
Ruslan Ermilov <ru@nginx.com>
parents: 490
diff changeset
66 Before version 0.9.0 only a single variable could be
17ceffcc7ffb Brought the ngx_http_map_module documentation up to date.
Ruslan Ermilov <ru@nginx.com>
parents: 490
diff changeset
67 specified in the first parameter.
17ceffcc7ffb Brought the ngx_http_map_module documentation up to date.
Ruslan Ermilov <ru@nginx.com>
parents: 490
diff changeset
68 </note>
17ceffcc7ffb Brought the ngx_http_map_module documentation up to date.
Ruslan Ermilov <ru@nginx.com>
parents: 490
diff changeset
69 </para>
17ceffcc7ffb Brought the ngx_http_map_module documentation up to date.
Ruslan Ermilov <ru@nginx.com>
parents: 490
diff changeset
70
17ceffcc7ffb Brought the ngx_http_map_module documentation up to date.
Ruslan Ermilov <ru@nginx.com>
parents: 490
diff changeset
71 <para>
714
ec33576efaa5 Added note about minimal impact of declaring multiple variables (geo, map).
Vladimir Homutov <vl@nginx.com>
parents: 659
diff changeset
72 <note>
ec33576efaa5 Added note about minimal impact of declaring multiple variables (geo, map).
Vladimir Homutov <vl@nginx.com>
parents: 659
diff changeset
73 Since variables are evaluated only when used, the mere existence
ec33576efaa5 Added note about minimal impact of declaring multiple variables (geo, map).
Vladimir Homutov <vl@nginx.com>
parents: 659
diff changeset
74 of even a large number of declared “<literal>map</literal>” variables
ec33576efaa5 Added note about minimal impact of declaring multiple variables (geo, map).
Vladimir Homutov <vl@nginx.com>
parents: 659
diff changeset
75 does not incur any extra costs for request processing.
ec33576efaa5 Added note about minimal impact of declaring multiple variables (geo, map).
Vladimir Homutov <vl@nginx.com>
parents: 659
diff changeset
76 </note>
ec33576efaa5 Added note about minimal impact of declaring multiple variables (geo, map).
Vladimir Homutov <vl@nginx.com>
parents: 659
diff changeset
77 </para>
ec33576efaa5 Added note about minimal impact of declaring multiple variables (geo, map).
Vladimir Homutov <vl@nginx.com>
parents: 659
diff changeset
78
ec33576efaa5 Added note about minimal impact of declaring multiple variables (geo, map).
Vladimir Homutov <vl@nginx.com>
parents: 659
diff changeset
79 <para>
572
17ceffcc7ffb Brought the ngx_http_map_module documentation up to date.
Ruslan Ermilov <ru@nginx.com>
parents: 490
diff changeset
80 Parameters inside the <literal>map</literal> block specify a mapping
17ceffcc7ffb Brought the ngx_http_map_module documentation up to date.
Ruslan Ermilov <ru@nginx.com>
parents: 490
diff changeset
81 between source and resulting values.
17ceffcc7ffb Brought the ngx_http_map_module documentation up to date.
Ruslan Ermilov <ru@nginx.com>
parents: 490
diff changeset
82 </para>
17ceffcc7ffb Brought the ngx_http_map_module documentation up to date.
Ruslan Ermilov <ru@nginx.com>
parents: 490
diff changeset
83
17ceffcc7ffb Brought the ngx_http_map_module documentation up to date.
Ruslan Ermilov <ru@nginx.com>
parents: 490
diff changeset
84 <para>
17ceffcc7ffb Brought the ngx_http_map_module documentation up to date.
Ruslan Ermilov <ru@nginx.com>
parents: 490
diff changeset
85 Source values are specified as strings or regular expressions (0.9.6).
17ceffcc7ffb Brought the ngx_http_map_module documentation up to date.
Ruslan Ermilov <ru@nginx.com>
parents: 490
diff changeset
86 </para>
17ceffcc7ffb Brought the ngx_http_map_module documentation up to date.
Ruslan Ermilov <ru@nginx.com>
parents: 490
diff changeset
87
17ceffcc7ffb Brought the ngx_http_map_module documentation up to date.
Ruslan Ermilov <ru@nginx.com>
parents: 490
diff changeset
88 <para>
17ceffcc7ffb Brought the ngx_http_map_module documentation up to date.
Ruslan Ermilov <ru@nginx.com>
parents: 490
diff changeset
89 A regular expression should either start from the “<literal>~</literal>”
17ceffcc7ffb Brought the ngx_http_map_module documentation up to date.
Ruslan Ermilov <ru@nginx.com>
parents: 490
diff changeset
90 symbol for a case-sensitive matching, or from the “<literal>~*</literal>”
17ceffcc7ffb Brought the ngx_http_map_module documentation up to date.
Ruslan Ermilov <ru@nginx.com>
parents: 490
diff changeset
91 symbols (1.0.4) for case-insensitive matching.
17ceffcc7ffb Brought the ngx_http_map_module documentation up to date.
Ruslan Ermilov <ru@nginx.com>
parents: 490
diff changeset
92 A regular expression can contain named and positional captures
17ceffcc7ffb Brought the ngx_http_map_module documentation up to date.
Ruslan Ermilov <ru@nginx.com>
parents: 490
diff changeset
93 that can later be used in other directives along with the
17ceffcc7ffb Brought the ngx_http_map_module documentation up to date.
Ruslan Ermilov <ru@nginx.com>
parents: 490
diff changeset
94 resulting variable.
17ceffcc7ffb Brought the ngx_http_map_module documentation up to date.
Ruslan Ermilov <ru@nginx.com>
parents: 490
diff changeset
95 </para>
17ceffcc7ffb Brought the ngx_http_map_module documentation up to date.
Ruslan Ermilov <ru@nginx.com>
parents: 490
diff changeset
96
17ceffcc7ffb Brought the ngx_http_map_module documentation up to date.
Ruslan Ermilov <ru@nginx.com>
parents: 490
diff changeset
97 <para>
17ceffcc7ffb Brought the ngx_http_map_module documentation up to date.
Ruslan Ermilov <ru@nginx.com>
parents: 490
diff changeset
98 If a source value matches one of the names of special parameters
659
77a3314c74a7 Avoid the uses of second person.
Ruslan Ermilov <ru@nginx.com>
parents: 627
diff changeset
99 described below, it should be prefixed with the “<literal>\</literal>” symbol.
572
17ceffcc7ffb Brought the ngx_http_map_module documentation up to date.
Ruslan Ermilov <ru@nginx.com>
parents: 490
diff changeset
100 </para>
17ceffcc7ffb Brought the ngx_http_map_module documentation up to date.
Ruslan Ermilov <ru@nginx.com>
parents: 490
diff changeset
101
17ceffcc7ffb Brought the ngx_http_map_module documentation up to date.
Ruslan Ermilov <ru@nginx.com>
parents: 490
diff changeset
102 <para>
17ceffcc7ffb Brought the ngx_http_map_module documentation up to date.
Ruslan Ermilov <ru@nginx.com>
parents: 490
diff changeset
103 The resulting value can be a string
17ceffcc7ffb Brought the ngx_http_map_module documentation up to date.
Ruslan Ermilov <ru@nginx.com>
parents: 490
diff changeset
104 or another variable (0.9.0).
17ceffcc7ffb Brought the ngx_http_map_module documentation up to date.
Ruslan Ermilov <ru@nginx.com>
parents: 490
diff changeset
105 </para>
17ceffcc7ffb Brought the ngx_http_map_module documentation up to date.
Ruslan Ermilov <ru@nginx.com>
parents: 490
diff changeset
106
17ceffcc7ffb Brought the ngx_http_map_module documentation up to date.
Ruslan Ermilov <ru@nginx.com>
parents: 490
diff changeset
107 <para>
17ceffcc7ffb Brought the ngx_http_map_module documentation up to date.
Ruslan Ermilov <ru@nginx.com>
parents: 490
diff changeset
108 The directive also supports three special parameters:
348
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
109 <list type="tag">
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
110 <tag-name><literal>default</literal> <value>value</value></tag-name>
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
111 <tag-desc>
572
17ceffcc7ffb Brought the ngx_http_map_module documentation up to date.
Ruslan Ermilov <ru@nginx.com>
parents: 490
diff changeset
112 sets the resulting value if the source value matches none
17ceffcc7ffb Brought the ngx_http_map_module documentation up to date.
Ruslan Ermilov <ru@nginx.com>
parents: 490
diff changeset
113 of the specified variants.
17ceffcc7ffb Brought the ngx_http_map_module documentation up to date.
Ruslan Ermilov <ru@nginx.com>
parents: 490
diff changeset
114 When <literal>default</literal> is not specified, the default
17ceffcc7ffb Brought the ngx_http_map_module documentation up to date.
Ruslan Ermilov <ru@nginx.com>
parents: 490
diff changeset
115 resulting value will be an empty string.
348
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
116 </tag-desc>
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
117
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
118 <tag-name><literal>hostnames</literal></tag-name>
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
119 <tag-desc>
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
120 allows to specify hostnames with a prefix or suffix mask, as source
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
121 values, for example,
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
122 <example>
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
123 *.example.com 1;
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
124 example.* 1;
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
125 </example>
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
126 The following two records
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
127 <example>
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
128 example.com 1;
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
129 *.example.com 1;
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
130 </example>
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
131 can be combined:
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
132 <example>
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
133 .example.com 1;
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
134 </example>
572
17ceffcc7ffb Brought the ngx_http_map_module documentation up to date.
Ruslan Ermilov <ru@nginx.com>
parents: 490
diff changeset
135 This parameter should be specified before the list of values.
348
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
136 </tag-desc>
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
137
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
138 <tag-name><literal>include</literal> <value>file</value></tag-name>
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
139 <tag-desc>
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
140 includes a file with values.
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
141 There can be several inclusions.
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
142 </tag-desc>
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
143
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
144 </list>
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
145 </para>
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
146
572
17ceffcc7ffb Brought the ngx_http_map_module documentation up to date.
Ruslan Ermilov <ru@nginx.com>
parents: 490
diff changeset
147 <para>
17ceffcc7ffb Brought the ngx_http_map_module documentation up to date.
Ruslan Ermilov <ru@nginx.com>
parents: 490
diff changeset
148 If the source value matches more than one of the specified variants,
17ceffcc7ffb Brought the ngx_http_map_module documentation up to date.
Ruslan Ermilov <ru@nginx.com>
parents: 490
diff changeset
149 e.g. both mask and regular expression match, the first matching
627
af23cb587b00 Typos fixed.
Vladimir Homutov <vl@nginx.com>
parents: 625
diff changeset
150 variant will be chosen, in the following order of precedence:
572
17ceffcc7ffb Brought the ngx_http_map_module documentation up to date.
Ruslan Ermilov <ru@nginx.com>
parents: 490
diff changeset
151 <list type="enum">
17ceffcc7ffb Brought the ngx_http_map_module documentation up to date.
Ruslan Ermilov <ru@nginx.com>
parents: 490
diff changeset
152
17ceffcc7ffb Brought the ngx_http_map_module documentation up to date.
Ruslan Ermilov <ru@nginx.com>
parents: 490
diff changeset
153 <listitem>
17ceffcc7ffb Brought the ngx_http_map_module documentation up to date.
Ruslan Ermilov <ru@nginx.com>
parents: 490
diff changeset
154 string value without a mask
17ceffcc7ffb Brought the ngx_http_map_module documentation up to date.
Ruslan Ermilov <ru@nginx.com>
parents: 490
diff changeset
155 </listitem>
17ceffcc7ffb Brought the ngx_http_map_module documentation up to date.
Ruslan Ermilov <ru@nginx.com>
parents: 490
diff changeset
156
17ceffcc7ffb Brought the ngx_http_map_module documentation up to date.
Ruslan Ermilov <ru@nginx.com>
parents: 490
diff changeset
157 <listitem>
17ceffcc7ffb Brought the ngx_http_map_module documentation up to date.
Ruslan Ermilov <ru@nginx.com>
parents: 490
diff changeset
158 longest string value with a prefix mask,
17ceffcc7ffb Brought the ngx_http_map_module documentation up to date.
Ruslan Ermilov <ru@nginx.com>
parents: 490
diff changeset
159 e.g. “<literal>*.example.com</literal>”
17ceffcc7ffb Brought the ngx_http_map_module documentation up to date.
Ruslan Ermilov <ru@nginx.com>
parents: 490
diff changeset
160 </listitem>
17ceffcc7ffb Brought the ngx_http_map_module documentation up to date.
Ruslan Ermilov <ru@nginx.com>
parents: 490
diff changeset
161
17ceffcc7ffb Brought the ngx_http_map_module documentation up to date.
Ruslan Ermilov <ru@nginx.com>
parents: 490
diff changeset
162 <listitem>
17ceffcc7ffb Brought the ngx_http_map_module documentation up to date.
Ruslan Ermilov <ru@nginx.com>
parents: 490
diff changeset
163 longest string value with a suffix mask,
17ceffcc7ffb Brought the ngx_http_map_module documentation up to date.
Ruslan Ermilov <ru@nginx.com>
parents: 490
diff changeset
164 e.g. “<literal>mail.*</literal>”
17ceffcc7ffb Brought the ngx_http_map_module documentation up to date.
Ruslan Ermilov <ru@nginx.com>
parents: 490
diff changeset
165 </listitem>
17ceffcc7ffb Brought the ngx_http_map_module documentation up to date.
Ruslan Ermilov <ru@nginx.com>
parents: 490
diff changeset
166
17ceffcc7ffb Brought the ngx_http_map_module documentation up to date.
Ruslan Ermilov <ru@nginx.com>
parents: 490
diff changeset
167 <listitem>
17ceffcc7ffb Brought the ngx_http_map_module documentation up to date.
Ruslan Ermilov <ru@nginx.com>
parents: 490
diff changeset
168 first matching regular expression
17ceffcc7ffb Brought the ngx_http_map_module documentation up to date.
Ruslan Ermilov <ru@nginx.com>
parents: 490
diff changeset
169 (in order of appearance in a configuration file)
17ceffcc7ffb Brought the ngx_http_map_module documentation up to date.
Ruslan Ermilov <ru@nginx.com>
parents: 490
diff changeset
170 </listitem>
17ceffcc7ffb Brought the ngx_http_map_module documentation up to date.
Ruslan Ermilov <ru@nginx.com>
parents: 490
diff changeset
171
17ceffcc7ffb Brought the ngx_http_map_module documentation up to date.
Ruslan Ermilov <ru@nginx.com>
parents: 490
diff changeset
172 <listitem>
17ceffcc7ffb Brought the ngx_http_map_module documentation up to date.
Ruslan Ermilov <ru@nginx.com>
parents: 490
diff changeset
173 default value
17ceffcc7ffb Brought the ngx_http_map_module documentation up to date.
Ruslan Ermilov <ru@nginx.com>
parents: 490
diff changeset
174 </listitem>
17ceffcc7ffb Brought the ngx_http_map_module documentation up to date.
Ruslan Ermilov <ru@nginx.com>
parents: 490
diff changeset
175
17ceffcc7ffb Brought the ngx_http_map_module documentation up to date.
Ruslan Ermilov <ru@nginx.com>
parents: 490
diff changeset
176 </list>
17ceffcc7ffb Brought the ngx_http_map_module documentation up to date.
Ruslan Ermilov <ru@nginx.com>
parents: 490
diff changeset
177 </para>
17ceffcc7ffb Brought the ngx_http_map_module documentation up to date.
Ruslan Ermilov <ru@nginx.com>
parents: 490
diff changeset
178
348
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
179 </directive>
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
180
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
181
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
182 <directive name="map_hash_bucket_size">
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
183 <syntax><value>size</value></syntax>
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
184 <default>32|64|128</default>
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
185 <context>http</context>
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
186
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
187 <para>
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
188 Sets the bucket size for the <link id="map"/> variables hash tables.
625
af3f38e349eb Removed terminal whitespace and fixed apostrophes used.
Ruslan Ermilov <ru@nginx.com>
parents: 589
diff changeset
189 Default value depends on the size of the processor’s cache line.
659
77a3314c74a7 Avoid the uses of second person.
Ruslan Ermilov <ru@nginx.com>
parents: 627
diff changeset
190 Details of setting up hash tables are provided in a separate
77a3314c74a7 Avoid the uses of second person.
Ruslan Ermilov <ru@nginx.com>
parents: 627
diff changeset
191 <link doc="../hash.xml">document</link>.
348
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
192 </para>
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
193
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
194 </directive>
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
195
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
196
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
197 <directive name="map_hash_max_size">
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
198 <syntax><value>size</value></syntax>
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
199 <default>2048</default>
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
200 <context>http</context>
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
201
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
202 <para>
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
203 Sets the maximum <value>size</value> of the <link id="map"/> variables
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
204 hash tables.
659
77a3314c74a7 Avoid the uses of second person.
Ruslan Ermilov <ru@nginx.com>
parents: 627
diff changeset
205 Details of setting up hash tables are provided in a separate
77a3314c74a7 Avoid the uses of second person.
Ruslan Ermilov <ru@nginx.com>
parents: 627
diff changeset
206 <link doc="../hash.xml">document</link>.
348
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
207 </para>
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
208
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
209 </directive>
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
210
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
211 </section>
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
212
5a848934a12d English translation of ngx_http_geoip_module, ngx_http_map_module,
Ruslan Ermilov <ru@nginx.com>
parents:
diff changeset
213 </module>