Модуль ngx_http_realip_module
- Пример конфигурации
- Директивы
- set_real_ip_from
- real_ip_header
- real_ip_recursive
- Встроенные переменные
Модуль ngx_http_realip_module используется для изменения адреса и (необязательно) порта клиента на те, что отправлены в указанном поле заголовка.
Этот модуль не включен по умолчанию, его необходимо включить с помощью параметра конфигурации --with-http_realip_module.
Пример конфигурации
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;
Директивы
| Синтаксис: | set_real_ip_from
address |
CIDR |
unix:; |
|---|---|
| Значение по умолчанию: | — |
| Контекст: | http, server, location |
Определяет доверенные адреса, которые, как известно, отправляют корректные адреса замены. Если указано специальное значение unix:, все сокеты UNIX-домена будут считаться доверенными. Доверенные адреса также могут быть указаны с помощью имени хоста (1.13.1).
IPv6 адреса поддерживаются начиная с версии 1.3.0 и 1.2.1.
| Синтаксис: | real_ip_header
field |
X-Real-IP |
X-Forwarded-For |
proxy_protocol; |
|---|---|
| Значение по умолчанию: | real_ip_header X-Real-IP; |
| Контекст: | http, server, location |
Определяет поле заголовка запроса, значение которого будет использоваться для замены адреса клиента.
Значение поля заголовка запроса, содержащее необязательный порт, также используется для замены порта клиента (1.11.0). Адрес и порт должны быть указаны в соответствии с RFC 3986.
Параметр proxy_protocol (1.5.12) изменяет адрес клиента на адрес из заголовка протокола PROXY. Протокол PROXY должен быть предварительно включен, установив параметр proxy_protocol в директиве listen.
| Синтаксис: | real_ip_recursive on | off; |
|---|---|
| Значение по умолчанию: | real_ip_recursive off; |
| Контекст: | http, server, location |
Эта директива появилась в версиях 1.3.0 и 1.2.1.
Если рекурсивный поиск отключен, исходный адрес клиента, который соответствует одному из доверенных адресов, заменяется последним адресом, отправленным в поле заголовка запроса, определённом директивой real_ip_header. Если рекурсивный поиск включён, исходный адрес клиента, который соответствует одному из доверенных адресов, заменяется последним недоверенным адресом, отправленным в поле заголовка запроса.
Встроенные переменные
$realip_remote_addr- сохраняет исходный адрес клиента (1.9.7)
$realip_remote_port- сохраняет исходный порт клиента (1.11.0)
© 2002-2021 Igor Sysoev
© 2011-2024 Nginx, Inc.
Licensed under the BSD License.
https://nginx.org/en/docs/http/ngx_http_realip_module.html