モジュール ngx_http_browser_module

構成の例
ディレクティブ
     ancient_browser
     ancient_browser_value
     modern_browser
     modern_browser_value

ngx_http_browser_module モジュールは、「User-Agent」リクエストヘッダーフィールドの値に依存する変数を作成します。

$modern_browser
ブラウザーが最新として認識された場合、modern_browser_value ディレクティブで設定された値と同じになります。
$ancient_browser
ブラウザーが古いとして認識された場合、ancient_browser_value ディレクティブで設定された値と同じになります。
$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;
}

ディレクティブ

構文 ancient_browser string ...;
既定値
コンテキスト httpserverlocation

指定されたサブストリングのいずれかが「User-Agent」リクエストヘッダーフィールドで見つかった場合、そのブラウザーは古いものとみなされます。特別な文字列「netscape4」は、「^Mozilla/[1-4]」という正規表現に対応します。

構文 ancient_browser_value string;
既定値
ancient_browser_value 1;
コンテキスト httpserverlocation

$ancient_browser 変数の値を設定します。

構文 modern_browser browser version;
modern_browser unlisted;
既定値
コンテキスト httpserverlocation

ブラウザーが最新であるとみなされるバージョンを指定します。ブラウザーは、msiegecko(Mozilla ベースのブラウザー)、operasafari、または konqueror のいずれかです。

バージョンは、X、X.X、X.X.X、または X.X.X.X という形式で指定できます。それぞれの形式の最大値は、4000、4000.99、4000.99.99、4000.99.99.99 です。

特別な値 unlisted は、modern_browserancient_browser ディレクティブでブラウザーがリストされていない場合に、そのブラウザーを最新とみなすことを指定します。それ以外の場合は、そのようなブラウザーは古いものとみなされます。リクエストがヘッダーの「User-Agent」フィールドを提供しない場合、ブラウザーはリストされていないとみなされます。

構文 modern_browser_value string;
既定値
modern_browser_value 1;
コンテキスト httpserverlocation

$modern_browser 変数の値を設定します。