nginx

Модуль ngx_http_geoip_module


english
русский

简体中文
עברית
日本語
türkçe

новости [en]
об nginx
скачать
безопасность [en]
pgp ключи [en]
документация
faq
ссылки [en]
книги [en]
поддержка
пожертвования [en]

trac
wiki
twitter
nginx.com
Пример конфигурации
Директивы
     geoip_country
     geoip_city
     geoip_org
     geoip_proxy
     geoip_proxy_recursive

Модуль ngx_http_geoip_module (0.8.6+) создаёт переменные, значения которых зависят от IP-адреса клиента, используя готовые базы данных MaxMind.

По умолчанию этот модуль не собирается, его сборку необходимо разрешить с помощью конфигурационного параметра --with-http_geoip_module.

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

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

http {
    geoip_country         GeoIP.dat;
    geoip_city            GeoLiteCity.dat;
    geoip_proxy           192.168.100.0/24;
    geoip_proxy           2001:0db8::/32;
    geoip_proxy_recursive on;
    ...

Директивы

синтаксис: geoip_country файл;
умолчание:
контекст: http

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

$geoip_country_code
двухбуквенный код страны, например, “RU”, “US”.
$geoip_country_code3
трёхбуквенный код страны, например, “RUS”, “USA”.
$geoip_country_name
название страны, например, “Russian Federation”, “United States”.

синтаксис: geoip_city файл;
умолчание:
контекст: http

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

$geoip_city_country_code
двухбуквенный код страны, например, “RU”, “US”.
$geoip_city_country_code3
трёхбуквенный код страны, например, “RUS”, “USA”.
$geoip_city_country_name
название страны, например, “Russian Federation”, “United States”.
$geoip_region
название региона страны (область, край, штат, провинция, федеральная земля и тому подобное), например, “Moscow City”, “DC”.
$geoip_city
название города, например, “Moscow”, “Washington”.
$geoip_postal_code
почтовый индекс.

синтаксис: geoip_org файл;
умолчание:
контекст: http

Эта директива появилась в версии 1.0.3.

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

$geoip_org
название организации, например, “The University of Melbourne”.

синтаксис: geoip_proxy адрес | CIDR;
умолчание:
контекст: http

Эта директива появилась в версиях 1.3.0 и 1.2.1.

Задаёт доверенные адреса, при запросе с которых будет использоваться адрес в переданном поле заголовка запроса “X-Forwarded-For”.

синтаксис: geoip_proxy_recursive on | off;
умолчание:
geoip_proxy_recursive off;
контекст: http

Эта директива появилась в версиях 1.3.0 и 1.2.1.

При выключенном рекурсивном поиске вместо исходного адреса клиента, совпадающего с одним из доверенных адресов, будет использоваться последний адрес, переданный в “X-Forwarded-For”. При включённом рекурсивном поиске вместо исходного адреса клиента, совпадающего с одним из доверенных адресов, будет использоваться последний не доверенный адрес, переданный в “X-Forwarded-For”.