GeoIP#

Создает переменные, значения которых зависят от IP-адреса клиента, используя готовые базы данных MaxMind.

При использовании баз данных с поддержкой IPv6 IPv4-адреса ищутся отображенными на IPv6.

При сборке из исходного кода модуль необходимо включить с помощью параметра сборки ‑‑with‑stream_geoip_module.

Важно

Для этого модуля нужна библиотека MaxMind GeoIP.

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

stream {
    geoip_country         GeoIP.dat;
    geoip_city            GeoLiteCity.dat;

    map $geoip_city_continent_code $nearest_server {
        default        example.com;
        EU          eu.example.com;
        NA          na.example.com;
        AS          as.example.com;
    }
#   ...
}

Директивы#

geoip_country#

Синтаксис

geoip_country файл;

По умолчанию

Контекст

stream

Задает базу данных для определения страны в зависимости от значения IP-адреса клиента. При использовании этой базы данных доступны следующие переменные:

$geoip_country_code

двухбуквенный код страны, например, "RU", "US".

$geoip_country_code3

трехбуквенный код страны, например, "RUS", "USA".

$geoip_country_name

название страны, например, "Russian Federation", "United States".

geoip_city#

Синтаксис

geoip_city файл;

По умолчанию

Контекст

stream

Задает базу данных для определения страны, региона и города в зависимости от значения IP-адреса клиента. При использовании этой базы данных доступны следующие переменные:

$geoip_city_continent_code

двухбуквенный код континента, например, "EU", "NA".

$geoip_city_country_code

двухбуквенный код страны, например, "RU", "US".

$geoip_city_country_code3

трехбуквенный код страны, например, "RUS", "USA".

$geoip_city_country_name

название страны, например, "Russian Federation", "United States".

$geoip_dma_code

DMA-код региона в США (также известный как "код агломерации"), согласно геотаргетингу Google AdWords API.

$geoip_latitude

широта.

$geoip_longitude

долгота.

$geoip_region

двухсимвольный код региона страны (область, край, штат, провинция, федеральная земля и тому подобное), например, "48", "DC".

$geoip_region_name

название региона страны (область, край, штат, провинция, федеральная земля и тому подобное), например, "Moscow City", "District of Columbia".

$geoip_city

название города, например, "Moscow", "Washington".

$geoip_postal_code

почтовый индекс.

geoip_org#

Синтаксис

geoip_org файл;

По умолчанию

Контекст

stream

Задает базу данных для определения названия организации в зависимости от значения IP-адреса клиента. При использовании этой базы данных доступна следующая переменная:

$geoip_org

название организации, например, "The University of Melbourne".