diff 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
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/xml/cn/docs/http/ngx_http_map_module.xml	Tue Dec 25 06:34:37 2012 +0000
@@ -0,0 +1,186 @@
+<?xml version="1.0"?>
+
+<!--
+  Copyright (C) Igor Sysoev
+  Copyright (C) Nginx, Inc.
+  -->
+
+<!DOCTYPE module SYSTEM "../../../../dtd/module.dtd">
+
+<module name="Module ngx_http_map_module"
+        link="/cn/docs/http/ngx_http_map_module.html"
+        lang="cn"
+        translator="yzprofile"
+        rev="1">
+
+<section id="summary">
+
+<para>
+模块 <literal>ngx_http_map_module</literal> 可以创建一些和另外变量相关联的变量。
+</para>
+
+</section>
+
+
+<section id="example" name="配置范例">
+
+<para>
+<example>
+map $http_host $name {
+    hostnames;
+
+    default       0;
+
+    example.com   1;
+    *.example.com 1;
+    example.org   2;
+    *.example.org 2;
+    .example.net  3;
+    wap.*         4;
+}
+
+map $http_user_agent $mobile {
+    default       0;
+    "~Opera Mini" 1;
+}
+</example>
+</para>
+
+</section>
+
+
+<section id="directives" name="指令">
+
+<directive name="map">
+<syntax block="yes">
+    <value>string</value>
+    <value>$variable</value></syntax>
+<default/>
+<context>http</context>
+
+<para>
+在配置的参数中,第一个是要创建新的变量,它的值取决于后面一个或多个源变量。
+<note>
+在0.9.0版本之前,这里只支持一个变量。
+</note>
+</para>
+
+<para>
+在 <literal>map</literal> 块里的参数指定了源变量值和结果值的对应关系。
+</para>
+
+<para>
+源变量值可以使用字符串或者正则表达式 (0.9.6)。
+</para>
+
+<para>
+一个正则表达式如果以 “<literal>~</literal>” 开头,这个正则表达式对大小写敏感;
+若以 “<literal>~*</literal>”开头 (1.0.4),这个正则表达式对大小写不敏感。
+且正则表达式里可以包含命名捕获和位置捕获,这些变量可以跟结果变量一起被其它指令使用。
+</para>
+
+<para>
+如果源变量的值正好跟特殊参数同名(看下面),它要以 “<literal>\</literal>” 字符作为前缀。
+</para>
+
+<para>
+结果变量可以是一个字符串也可以是另外一个变量 (0.9.0)。
+</para>
+
+<para>
+这个指令也支持三个特殊参数。
+<list type="tag">
+<tag-name><literal>default</literal> <value>value</value></tag-name>
+<tag-desc>
+如果源变量值没有匹配到任何变量,则设置一个默认值作为结果。
+当没有设置 <literal>default</literal>,将会用一个空的字符串作为默认的结果。
+</tag-desc>
+
+<tag-name><literal>hostnames</literal></tag-name>
+<tag-desc>
+允许用前缀或者后缀掩码指定域名作为源变量值,举个例子,
+<example>
+*.example.com 1;
+example.*     1;
+</example>
+这两条记录
+<example>
+example.com   1;
+*.example.com 1;
+</example>
+可以被合并为:
+<example>
+.example.com  1;
+</example>
+这个参数必须写在值映射列表的最前面。
+</tag-desc>
+
+<tag-name><literal>include</literal> <value>file</value></tag-name>
+<tag-desc>
+包含一个或者多个存有映射值的文件。
+</tag-desc>
+
+</list>
+</para>
+
+<para>
+如果源值匹配了多余一个的指定变量,例如掩码和正则同时匹配,那么将会按照下面的顺序进行优先选择:
+<list type="enum">
+
+<listitem>
+没有掩码的字符串
+</listitem>
+
+<listitem>
+最长的带前缀的字符串,例如: “<literal>*.example.com</literal>”
+</listitem>
+
+<listitem>
+最长的带后缀的字符串,例如:“<literal>mail.*</literal>”
+</listitem>
+
+<listitem>
+按顺序第一个先匹配的正则表达式 (在配置文件中体现的顺序)
+</listitem>
+
+<listitem>
+默认值
+</listitem>
+
+</list>
+</para>
+
+</directive>
+
+
+<directive name="map_hash_bucket_size">
+<syntax><value>size</value></syntax>
+<default>32|64|128</default>
+<context>http</context>
+
+<para>
+为 <link id="map"/> 的变量哈稀表设置桶大小。
+默认值取决于处理器cache line的大小。
+可以从这里获取到更多参考信息:
+<link doc="../hash.xml">设置哈稀表</link>.
+</para>
+
+</directive>
+
+
+<directive name="map_hash_max_size">
+<syntax><value>size</value></syntax>
+<default>2048</default>
+<context>http</context>
+
+<para>
+设置 <link id="map"/> 变量哈稀表<value>大小</value>的上限。
+可以从这里获取到更多参考信息:
+<link doc="../hash.xml">设置哈稀表</link>.
+</para>
+
+</directive>
+
+</section>
+
+</module>