IP-адрес в формах редактирования

#
IP-адрес в формах редактирования
В различных формах редактирования различного контента в ЦА есть поле IP-адрес. Туда подставляется значение IP пользователя, работающего с формой.
Из-за особенностей конфигурации веб-сервера в это поле подставляется значение IP 127.0.0.1. Я пытался найти, в каком месте происходит подстановка этого адреса, и в каком месте определяется значение IP, которое будет использоваться где-либо на сайте или в ЦА. Не нашел.

Подскажите, пожалуйста, где именно мне нужно исправить код или каким хуком воспользоваться, чтобы CMS брала значение IP не из $_SERVER["REMOTE_ADDR"], а, например, из $_SERVER["HTTP_X_REAL_IP"].
Модератор
#
Re: IP-адрес в формах редактирования
lezhenkin,
это должен делать вебсервер, например nginx, вы можете в bootstrap.php проверять наличие $_SERVER["HTTP_X_REAL_IP"] и если есть, перезаписывать значение $_SERVER["REMOTE_ADDR"] значением $_SERVER["HTTP_X_REAL_IP"]
#
Re: IP-адрес в формах редактирования
hostcms,
В моем случае это и есть nginx в связке с Apache. Но в REMOTE_ADDR попадает 127.0.0.1.

В общем, просто перезаписывать значение массива? Не искать более «элегантного» решения?
Модератор
#
Re: IP-адрес в формах редактирования
lezhenkin,
донастроить nginx будет более элегантным решением
server {
        ..
        location @fallback {
                proxy_pass http://127.0.0.1:8080;
                proxy_redirect http://127.0.0.1:8080 /;
                proxy_set_header Host $host;
                proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
                proxy_set_header X-Forwarded-Proto $scheme;
                proxy_set_header X-Forwarded-Port $server_port;
        }
        ...
}

а у апача включить remoteip и настроить
RemoteIPHeader X-Forwarded-For
RemoteIPInternalProxy 127.0.0.1
#
Re: IP-адрес в формах редактирования
hostcms,
Благодарю вас.
Авторизация