模块 ngx_http_browser_module

ancient_browser
ancient_browser_value
modern_browser
modern_browser_value配置
Directives
示例

该模块创建变量 其值取决于 “User-Agent” 的值 请求标头字段:ngx_http_browser_module

$modern_browser
等于 modern_browser_value Directives设置的值, 如果浏览器被识别为新式浏览器;
$ancient_browser
等于 ancient_browser_value Directives设置的值, 如果浏览器被识别为旧浏览器;
$msie
如果浏览器被标识为任何版本的 MSIE,则等于 “1”。

示例配置

选择索引文件:

modern_browser_value "modern.";

modern_browser msie      5.5;
modern_browser gecko     1.0.0;
modern_browser opera     9.0;
modern_browser safari    413;
modern_browser konqueror 3.0;

index index.${modern_browser}html index.html;

旧浏览器的重定向:

modern_browser msie      5.0;
modern_browser gecko     0.9.1;
modern_browser opera     8.0;
modern_browser safari    413;
modern_browser konqueror 3.0;

modern_browser unlisted;

ancient_browser Links Lynx netscape4;

if ($ancient_browser) {
    rewrite ^ /ancient.html;
}

Directives

语法: ancient_browser string ...;
默认值:
上下文: http, ,serverlocation

如果在 “User-Agent” 中找到任何指定的子字符串 request header 字段,则浏览器将被视为旧浏览器。 特殊字符串 “” 对应于 正则表达式 “”。netscape4^Mozilla/[1-4]

语法: ancient_browser_value string;
默认值:
ancient_browser_value 1;
上下文: http, ,serverlocation

设置变量的值。$ancient_browser

语法: modern_browser browser version;
modern_browser unlisted;
默认值:
上下文: http, ,serverlocation

指定浏览器被视为新式浏览器的起始版本。 浏览器可以是以下任何一种:、(基于 Mozilla 的浏览器)、、 或。msiegeckooperasafarikonqueror

可以采用以下格式指定版本:X、X.X、X.X.X 或 X.X.X.X。 每种格式的最大值为 分别为 4000、4000.99、4000.99.99 和 4000.99.99.99。

特殊值指定要考虑 如果 and ancient_browser Directives未列出该浏览器,则将其视为 modern。 否则,此类浏览器被视为过时。 如果请求未提供 “User-Agent” 字段 在标题中,浏览器被视为未列出。unlistedmodern_browser

语法: modern_browser_value string;
默认值:
modern_browser_value 1;
上下文: http, ,serverlocation

设置变量的值。$modern_browser