# HG changeset patch # User Ruslan Ermilov # Date 1327678885 0 # Node ID 2e549bb934019b198d55f405f034056cce7482d5 # Parent b082f02cb7a3916287a87393bae409fa5b07ac80 Revision. diff -r b082f02cb7a3 -r 2e549bb93401 xml/ru/docs/http/ngx_http_geo_module.xml --- a/xml/ru/docs/http/ngx_http_geo_module.xml Fri Jan 27 10:43:36 2012 +0000 +++ b/xml/ru/docs/http/ngx_http_geo_module.xml Fri Jan 27 15:41:25 2012 +0000 @@ -2,37 +2,37 @@ -
-Модуль ngx_http_geo_module создаёт переменные, значения которых -зависят от IP-адреса клиента. +Модуль ngx_http_geo_module создаёт переменные, +значения которых зависят от IP-адреса клиента.
-
+
- geo $geo { - default 0; - 127.0.0.1/32 2; - 192.168.1.0/24 1; - 10.1.0.0/16 1; - } +geo $geo { + default 0; + 127.0.0.1/32 2; + 192.168.1.0/24 1; + 10.1.0.0/16 1; +}
-
+
[$адрес] $переменная @@ -40,97 +40,105 @@ http -Директива geo описывает для указанной переменной зависимость значения от +Описывает для указанной переменной зависимость значения от IP-адреса клиента. -По умолчанию адрес берётся из переменной $remote_addr, но его также (0.7.27) -можно получить из другой переменной, например: +По умолчанию адрес берётся из переменной $remote_addr, +но его также можно получить из другой переменной (0.7.27), например: - geo $arg_remote_addr $geo { - ...; - } +geo $arg_remote_addr $geo { + ...; +} Если значение переменной не представляет из себя правильный IP-адрес, -то используется адрес "255.255.255.255". +то используется адрес “255.255.255.255”. + Адреса задаются в виде CIDR или в виде диапазонов (0.7.23). -Кроме того, есть четыре специальных параметра: - +Кроме того, есть пять специальных параметров: + - -delete — удаляет описанную сеть (0.7.23). - +delete + +удаляет описанную сеть (0.7.23). + - -default — значение переменной, если адрес клиента не соответствует +default + +значение переменной, если адрес клиента не соответствует ни одному заданному адресу. -При использовании CIDR вместо default можно также написать 0.0.0.0/0. - +При использовании CIDR вместо default можно +также написать “0.0.0.0/0”. + - -include — включает файл с адресами и значениями. +include + +включает файл с адресами и значениями. Включений может быть несколько. - + - -proxy — задаёт адреса проски-серверов (0.8.7, 0.7.63), +proxy + +задаёт адреса проски-серверов (0.8.7, 0.7.63), при запросе с которых будет использоваться адрес в переданной в строке заголовка запроса "X-Forwarded-For". В отличие от обычных адресов, адреса прокси-серверов проверяются последовательно. - + - -ranges — указывает, что адреса задаются в виде диапазонов (0.7.23). -Эта директива должны быть первой. +ranges + +указывает, что адреса задаются в виде диапазонов (0.7.23). +Этот параметр должен быть первым. Для ускорения загрузки гео-базы нужно располагать адреса в порядке возрастания. - + -Пример описания: +Пример: - geo $country { - default ZZ; - include conf/geo.conf; - delete 127.0.0.0/16; - proxy 192.168.100.0/24; +geo $country { + default ZZ; + include conf/geo.conf; + delete 127.0.0.0/16; + proxy 192.168.100.0/24; - 127.0.0.0/24 US; - 127.0.0.1/32 RU; - 10.1.0.0/16 RU; - 192.168.1.0/24 UK; - } + 127.0.0.0/24 US; + 127.0.0.1/32 RU; + 10.1.0.0/16 RU; + 192.168.1.0/24 UK; +} -В файле conf/geo.conf могут быть такие строки: +В файле conf/geo.conf могут быть такие строки: -10.2.0.0/16 RU; -192.168.2.0/24 RU; +10.2.0.0/16 RU; +192.168.2.0/24 RU; В качестве значения выбирается максимальное совпадение, например, -для адреса 127.0.0.1 будет выбрано значение "RU", а не "US". +для адреса 127.0.0.1 будет выбрано значение “RU”, +а не “US”. Пример описания диапазонов: - geo $country { - ranges; - default ZZ; - 127.0.0.0-127.0.0.0 US; - 127.0.0.1-127.0.0.1 RU; - 127.0.0.1-127.0.0.255 US; - 10.1.0.0-10.1.255.255 RU; - 192.168.1.0-192.168.1.255 UK; - } +geo $country { + ranges; + default ZZ; + 127.0.0.0-127.0.0.0 US; + 127.0.0.1-127.0.0.1 RU; + 127.0.0.1-127.0.0.255 US; + 10.1.0.0-10.1.255.255 RU; + 192.168.1.0-192.168.1.255 UK; +}