view xml/ru/docs/http/ngx_http_realip_module.xml @ 1985:48ca712794c6

Documented the set_real_ip_from support of hostnames.
author Ruslan Ermilov <ru@nginx.com>
date Tue, 16 May 2017 13:47:28 +0300
parents a0a64fee6b13
children 4add6ae1296f
line wrap: on
line source

<?xml version="1.0"?>

<!--
  Copyright (C) Igor Sysoev
  Copyright (C) Nginx, Inc.
  -->

<!DOCTYPE module SYSTEM "../../../../dtd/module.dtd">

<module name="Модуль ngx_http_realip_module"
        link="/ru/docs/http/ngx_http_realip_module.html"
        lang="ru"
        rev="8">

<section id="summary">

<para>
Модуль <literal>ngx_http_realip_module</literal> позволяет
менять адрес и необязательный порт клиента
на переданные в указанном поле заголовка.
</para>

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

</section>


<section id="example" name="Пример конфигурации">

<para>
<example>
set_real_ip_from  192.168.1.0/24;
set_real_ip_from  192.168.2.1;
set_real_ip_from  2001:0db8::/32;
real_ip_header    X-Forwarded-For;
real_ip_recursive on;
</example>
</para>

</section>


<section id="directives" name="Директивы">

<directive name="set_real_ip_from">
<syntax>
    <value>адрес</value> |
    <value>CIDR</value> |
    <literal>unix:</literal></syntax>
<default/>
<context>http</context>
<context>server</context>
<context>location</context>

<para>
Задаёт доверенные адреса, которые передают верный адрес
для замены.
Если указано специальное значение <literal>unix:</literal>,
доверенными будут считаться все UNIX-сокеты.
Доверенные адреса могут быть также заданы при помощи имени хоста (1.13.1).
<note>
IPv6-адреса поддерживаются начиная с версий 1.3.0 и 1.2.1.
</note>
</para>

</directive>


<directive name="real_ip_header">
<syntax>
    <value>поле</value> |
    <literal>X-Real-IP</literal> |
    <literal>X-Forwarded-For</literal> |
    <literal>proxy_protocol</literal></syntax>
<default>X-Real-IP</default>
<context>http</context>
<context>server</context>
<context>location</context>

<para>
Задаёт поле заголовка запроса,
значение которого будет использоваться для замены адреса клиента.
</para>

<para>
Значение поля заголовка запроса, содержащее необязательный порт,
также используется для замены порта клиента (1.11.0).
Адрес и порт должны быть указаны согласно
<link url="https://tools.ietf.org/html/rfc3986">RFC 3986</link>.
</para>

<para>
Параметр <literal>proxy_protocol</literal> (1.5.12) меняет
адрес клиента на указанный в заголовке PROXY-протокола.
Протокол PROXY должен быть предварительно включён при помощи установки
параметра <literal>proxy_protocol</literal> в директиве
<link doc="ngx_http_core_module.xml" id="listen"/>.
</para>

</directive>


<directive name="real_ip_recursive">
<syntax><literal>on</literal> | <literal>off</literal></syntax>
<default>off</default>
<context>http</context>
<context>server</context>
<context>location</context>
<appeared-in>1.3.0</appeared-in>
<appeared-in>1.2.1</appeared-in>

<para>
При выключенном рекурсивном поиске исходный адрес клиента,
совпадающий с одним из доверенных адресов, заменяется на последний
адрес, переданный в поле заголовка запроса, заданного
директивой <link id="real_ip_header"/>.
При включённом рекурсивном поиске исходный адрес клиента,
совпадающий с одним из доверенных адресов, заменяется на последний
не доверенный адрес, переданный в заданном поле заголовка запроса.
</para>

</directive>

</section>


<section id="variables" name="Встроенные переменные">

<para>
<list type="tag">

<tag-name id="var_realip_remote_addr"><var>$realip_remote_addr</var></tag-name>
<tag-desc>
хранит исходный адрес клиента (1.9.7)
</tag-desc>

<tag-name id="var_realip_remote_port"><var>$realip_remote_port</var></tag-name>
<tag-desc>
хранит исходный порт клиента (1.11.0)
</tag-desc>

</list>
</para>

</section>

</module>