Nginx как передавать real IP в Apache 2.4?

Раздел: Linux
Написано: 23.08.2019
Автор: Antonio

Для передачи реального IP адреса из nginx в Apache 2.2 использовался модуль mod_rpaf, однако в версии 2.4 этот модуль уже не поддерживается.

Для нового Apache 2.4 используется модуль mod_remoteip.

nginx + apache

Без дополнительных настроек в access.log Apache мы будем видеть вместо настоящих IP адресов, адрес 127.0.0.1


Даже если указывать дополнительные заголовки в nginx.conf

    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

Это полностью не поможет и в логах апача все также будет только адрес 127.0.0.1

Решение вопроса:

Включаем модуль mod_remoteip

a2enmod remoteip

Создаем файл конфигурации модуля remoteip.conf

touch /etc/apache2/conf-available/remoteip.conf

*Ваш путь к каталогу конфигураций Apache может отличаться, от стандартного Debian

Добавляем в remoteip.conf

RemoteIPHeader X-Forwarded-For
RemoteIPTrustedProxy 127.0.0.1

Активируем файл конфигурации

a2enconf remoteip

Редактируем файл конфигурации apache2.conf

LogFormat «%h %l %u %t «%r» %>s %O «%{Referer}i» «%{User-Agent}i»» combined
LogFormat «%a %l %u %t «%r» %>s %O «%{Referer}i» «%{User-Agent}i»» combined

Меняем букву h на a, разница всего в одну букву.

Перезапускаем Apache (команда для Debian)

service apache2 restart

Проверяем файл логов Apache, в нем должны появится реальные адреса новых пользователей сайта.

Фразы: настоящий ай пи в логах, как включить? вместо реального адреса один и тот же, как настроить Apache 2.4

Поделиться с друзьями или в соц.сетях (спасибо)
Ещё похожие заметки:

Написать

Копирование информации с сайта возможно только с указанием прямой ссылки - https://nemcd.com