$realip_remote_port
Переменная $realip_remote_port содержит номер порта клиента, совершившего запрос, как он получен NGINX от upstream-сервера. — NGINX Core (HTTP)
Описание
Переменная $realip_remote_port используется в контексте реверс-проксирования и указывает исходный номер порта, который использовал клиент при подключении к серверу. Она особенно полезна, когда NGINX работает за балансировщиком нагрузки или прокси, и фактические данные о подключении клиента необходимы для логирования или другой обработки. Эта переменная становится доступной при использовании модуля real_ip, который позволяет NGINX корректно определять IP и порт клиента, когда запросы пересылаются с другого сервера, например с веб-аппликационного межсетевого экрана (WAF) или балансировщика нагрузки. Обычно эта переменная содержит числовые значения, представляющие номер порта, например 443 для HTTPS или 80 для HTTP, в зависимости от того, как клиент изначально подключился. Если директива `real_ip_header` в конфигурации NGINX корректно настроена для захвата заголовков входящих запросов (например, X-Forwarded-For), то переменная $realip_remote_port будет точно отражать порт, который использовал клиент, при условии, что конфигурация верна и соответствующие заголовки присутствуют. Неправильная настройка может привести к некорректному логированию и неверной идентификации подключений клиентов. В сущности, переменная $realip_remote_port повышает возможности безопасности и мониторинга, обеспечивая возможность приложениям ссылаться на реальные данные о подключениях клиентов при их обработке через различные промежуточные серверы.
Пример конфига
http {
set_real_ip_from 192.168.1.1; # Example trusted proxy
real_ip_header X-Forwarded-For;
}
server {
location / {
access_log /var/log/nginx/access.log combined;
}
}
# In the combined log format, you can include the realip remote port
log_format combined '$remote_addr - $remote_user [$time_local] "$request" $status $body_bytes_sent "$http_referer" "$http_user_agent" $realip_remote_port';Подсистема
httpКэшируется
ДаКонтексты
http, server, location, ifУбедитесь, что модуль real_ip включён при компиляции NGINX. Без него эта переменная будет недоступна.
Корректно настройте параметры доверенных прокси; иначе переменная может возвращать некорректные значения или значения по умолчанию.
Убедитесь, что заголовок, который вы используете для установки реального IP, корректно пересылается вашим upstream-прокси. Неправильно настроенные прокси могут изменить эти заголовки или не установить их.