Mercurial > hg > nginx-site
comparison xml/cn/docs/http/ngx_http_map_module.xml @ 792:ceb8a4e374b7
Updated the Chinese documentation.
author | Ruslan Ermilov <ru@nginx.com> |
---|---|
date | Tue, 25 Dec 2012 06:34:37 +0000 |
parents | |
children |
comparison
equal
deleted
inserted
replaced
791:15f2bab0740d | 792:ceb8a4e374b7 |
---|---|
1 <?xml version="1.0"?> | |
2 | |
3 <!-- | |
4 Copyright (C) Igor Sysoev | |
5 Copyright (C) Nginx, Inc. | |
6 --> | |
7 | |
8 <!DOCTYPE module SYSTEM "../../../../dtd/module.dtd"> | |
9 | |
10 <module name="Module ngx_http_map_module" | |
11 link="/cn/docs/http/ngx_http_map_module.html" | |
12 lang="cn" | |
13 translator="yzprofile" | |
14 rev="1"> | |
15 | |
16 <section id="summary"> | |
17 | |
18 <para> | |
19 模块 <literal>ngx_http_map_module</literal> 可以创建一些和另外变量相关联的变量。 | |
20 </para> | |
21 | |
22 </section> | |
23 | |
24 | |
25 <section id="example" name="配置范例"> | |
26 | |
27 <para> | |
28 <example> | |
29 map $http_host $name { | |
30 hostnames; | |
31 | |
32 default 0; | |
33 | |
34 example.com 1; | |
35 *.example.com 1; | |
36 example.org 2; | |
37 *.example.org 2; | |
38 .example.net 3; | |
39 wap.* 4; | |
40 } | |
41 | |
42 map $http_user_agent $mobile { | |
43 default 0; | |
44 "~Opera Mini" 1; | |
45 } | |
46 </example> | |
47 </para> | |
48 | |
49 </section> | |
50 | |
51 | |
52 <section id="directives" name="指令"> | |
53 | |
54 <directive name="map"> | |
55 <syntax block="yes"> | |
56 <value>string</value> | |
57 <value>$variable</value></syntax> | |
58 <default/> | |
59 <context>http</context> | |
60 | |
61 <para> | |
62 在配置的参数中,第一个是要创建新的变量,它的值取决于后面一个或多个源变量。 | |
63 <note> | |
64 在0.9.0版本之前,这里只支持一个变量。 | |
65 </note> | |
66 </para> | |
67 | |
68 <para> | |
69 在 <literal>map</literal> 块里的参数指定了源变量值和结果值的对应关系。 | |
70 </para> | |
71 | |
72 <para> | |
73 源变量值可以使用字符串或者正则表达式 (0.9.6)。 | |
74 </para> | |
75 | |
76 <para> | |
77 一个正则表达式如果以 “<literal>~</literal>” 开头,这个正则表达式对大小写敏感; | |
78 若以 “<literal>~*</literal>”开头 (1.0.4),这个正则表达式对大小写不敏感。 | |
79 且正则表达式里可以包含命名捕获和位置捕获,这些变量可以跟结果变量一起被其它指令使用。 | |
80 </para> | |
81 | |
82 <para> | |
83 如果源变量的值正好跟特殊参数同名(看下面),它要以 “<literal>\</literal>” 字符作为前缀。 | |
84 </para> | |
85 | |
86 <para> | |
87 结果变量可以是一个字符串也可以是另外一个变量 (0.9.0)。 | |
88 </para> | |
89 | |
90 <para> | |
91 这个指令也支持三个特殊参数。 | |
92 <list type="tag"> | |
93 <tag-name><literal>default</literal> <value>value</value></tag-name> | |
94 <tag-desc> | |
95 如果源变量值没有匹配到任何变量,则设置一个默认值作为结果。 | |
96 当没有设置 <literal>default</literal>,将会用一个空的字符串作为默认的结果。 | |
97 </tag-desc> | |
98 | |
99 <tag-name><literal>hostnames</literal></tag-name> | |
100 <tag-desc> | |
101 允许用前缀或者后缀掩码指定域名作为源变量值,举个例子, | |
102 <example> | |
103 *.example.com 1; | |
104 example.* 1; | |
105 </example> | |
106 这两条记录 | |
107 <example> | |
108 example.com 1; | |
109 *.example.com 1; | |
110 </example> | |
111 可以被合并为: | |
112 <example> | |
113 .example.com 1; | |
114 </example> | |
115 这个参数必须写在值映射列表的最前面。 | |
116 </tag-desc> | |
117 | |
118 <tag-name><literal>include</literal> <value>file</value></tag-name> | |
119 <tag-desc> | |
120 包含一个或者多个存有映射值的文件。 | |
121 </tag-desc> | |
122 | |
123 </list> | |
124 </para> | |
125 | |
126 <para> | |
127 如果源值匹配了多余一个的指定变量,例如掩码和正则同时匹配,那么将会按照下面的顺序进行优先选择: | |
128 <list type="enum"> | |
129 | |
130 <listitem> | |
131 没有掩码的字符串 | |
132 </listitem> | |
133 | |
134 <listitem> | |
135 最长的带前缀的字符串,例如: “<literal>*.example.com</literal>” | |
136 </listitem> | |
137 | |
138 <listitem> | |
139 最长的带后缀的字符串,例如:“<literal>mail.*</literal>” | |
140 </listitem> | |
141 | |
142 <listitem> | |
143 按顺序第一个先匹配的正则表达式 (在配置文件中体现的顺序) | |
144 </listitem> | |
145 | |
146 <listitem> | |
147 默认值 | |
148 </listitem> | |
149 | |
150 </list> | |
151 </para> | |
152 | |
153 </directive> | |
154 | |
155 | |
156 <directive name="map_hash_bucket_size"> | |
157 <syntax><value>size</value></syntax> | |
158 <default>32|64|128</default> | |
159 <context>http</context> | |
160 | |
161 <para> | |
162 为 <link id="map"/> 的变量哈稀表设置桶大小。 | |
163 默认值取决于处理器cache line的大小。 | |
164 可以从这里获取到更多参考信息: | |
165 <link doc="../hash.xml">设置哈稀表</link>. | |
166 </para> | |
167 | |
168 </directive> | |
169 | |
170 | |
171 <directive name="map_hash_max_size"> | |
172 <syntax><value>size</value></syntax> | |
173 <default>2048</default> | |
174 <context>http</context> | |
175 | |
176 <para> | |
177 设置 <link id="map"/> 变量哈稀表<value>大小</value>的上限。 | |
178 可以从这里获取到更多参考信息: | |
179 <link doc="../hash.xml">设置哈稀表</link>. | |
180 </para> | |
181 | |
182 </directive> | |
183 | |
184 </section> | |
185 | |
186 </module> |