<!-- review: finished -->

<a id="http-browser"></a>

# Browser

Создает переменные, значения которых зависят от значения поля `User-Agent` в заголовке запроса.

<a id="variables"></a>

## Переменные

<a id="v-modern-browser"></a>

### `$modern_browser`

равна значению, заданному директивой [modern_browser_value](#modern-browser-value), если браузер опознан как современный;

<a id="v-ancient-browser"></a>

### `$ancient_browser`

равна значению, заданному директивой [ancient_browser_value](#ancient-browser-value), если браузер опознан как устаревший;

<a id="v-msie"></a>

### `$msie`

равна "1", если браузер опознан как MSIE любой версии.

<a id="configuration-example-9"></a>

## Пример конфигурации

<a id="choosing-an-index-file"></a>

### Выбор индексного файла:

```nginx
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;
```

<a id="redirection-for-old-browsers"></a>

### Перенаправление для старых браузеров:

```nginx
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;
}
```

<a id="directives-10"></a>

## Директивы

<a id="index-0"></a>

<a id="id6"></a>

### ancient_browser

| [Синтаксис](https://angie.software//angie/docs/configuration/configfile.md#configfile)   | `ancient_browser` строка ...;   |
|------------------------------------------------------------------------------------------|---------------------------------|
| По умолчанию                                                                             | —                               |
| [Контекст](https://angie.software//angie/docs/configuration/configfile.md#configfile)    | http, server, location          |

Задает подстроки, при нахождении которых в поле `User-Agent` заголовка запроса браузер считается устаревшим. Специальная строка "netscape4" соответствует регулярному выражению "^Mozilla/[1-4]".

<a id="index-1"></a>

<a id="ancient-browser-value"></a>

### ancient_browser_value

| [Синтаксис](https://angie.software//angie/docs/configuration/configfile.md#configfile)   | `ancient_browser_value` строка;   |
|------------------------------------------------------------------------------------------|-----------------------------------|
| По умолчанию                                                                             | `ancient_browser_value 1;`        |
| [Контекст](https://angie.software//angie/docs/configuration/configfile.md#configfile)    | http, server, location            |

Задает значение для переменных [$ancient_browser](#v-ancient-browser).

<a id="index-2"></a>

<a id="id9"></a>

### modern_browser

| [Синтаксис](https://angie.software//angie/docs/configuration/configfile.md#configfile)   | `modern_browser` браузер версия;<br/><br/>`modern_browser` `unlisted`;   |
|------------------------------------------------------------------------------------------|--------------------------------------------------------------------------|
| По умолчанию                                                                             | —                                                                        |
| [Контекст](https://angie.software//angie/docs/configuration/configfile.md#configfile)    | http, server, location                                                   |

Задает версию браузера, начиная с которой он считается современным. В качестве браузера можно задать msie, gecko (браузеры, созданные на основе Mozilla), opera, safari или konqueror.

Версии можно задать в форматах X, X.X, X.X.X или X.X.X.X. Максимальные значения для каждого из форматов соответственно — 4000, 4000.99, 4000.99.99 и 4000.99.99.99.

Специальное значение `unlisted` указывает считать современным браузер, не описанный директивами modern_browser и [ancient_browser](#id6). В противном случае неперечисленный браузер будет считаться устаревшим. Если в заголовке запроса нет поля `User-Agent`, то браузер считается неперечисленным.

<a id="index-3"></a>

<a id="modern-browser-value"></a>

### modern_browser_value

| [Синтаксис](https://angie.software//angie/docs/configuration/configfile.md#configfile)   | `modern_browser_value` строка;   |
|------------------------------------------------------------------------------------------|----------------------------------|
| По умолчанию                                                                             | `modern_browser_value 1;`        |
| [Контекст](https://angie.software//angie/docs/configuration/configfile.md#configfile)    | http, server, location           |

Задает значение для переменных [$modern_browser](#v-modern-browser).
