====== mod_realip2 ====== {{tag>apache mod_realip2}} Источник - http://tresnet.ru/archives/152 Вот хоумпага этого модуля: sysoev.ru/mod_realip/ Ну что сказать, разработчик постарался на славу и создал модуль, который нужно компилить еще при сборке апача. Вот выдержка из документации: Модуль необходимо скопировать в каталог /src/modules/extra/ и активировать при сборке Apache Причем документация закончилась на версии апача 1.3 , соответственно нам уже не подходит =) при компиляции непосредственно самого исходника одного: apxs -i -c -n mod_realip.so mod_realip.c Вылезает порядка 30 ерроров и варнов, так что запасаемся терпением и тянем от меня уже скомпилированный mod_realip2.so и кидаем свой конфиг веб демона в **/etc/httpd/conf.d/mod_realip2.conf** вот такую инфу: LoadModule realip2_module modules/mod_realip2.so RealIP On RealIPProxy xx.xx.xx.xx yy.yy.yy.yy 127.0.0.1 RealIPHeader X-Real-IP Где xx.xx.xx.xx и yy.yy.yy.yy — IP Вашего сервера а сам .so вот сюда: **/usr/lib64/httpd/modules** PS К сожалению модуль найден пока только под x86_64. /etc/httpd/conf.d/mod_remoteip.conf LoadModule remoteip_module modules/mod_remoteip.so RemoteIPHeader X-Forwarded-For RemoteIPTrustedProxy 109.68.191.13 RemoteIPTrustedProxy 46.38.57.222 Apache 2.4 RemoteIPHeader X-Forwarded-For RemoteIPTrustedProxy 127.0.0.1 Для Debian надо активировать модуль # a2enmod mod_remoteip Меняем формат логов в ''{apache2|httpd}.conf'' LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined Заменяем на LogFormat "%a %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined * **%a** - Client IP address of the request (see the [[http://httpd.apache.org/docs/current/mod/mod_remoteip.html|mod_remoteip]] module). * **%h** - Remote hostname. Will log the IP address if HostnameLookups is set to Off, which is the default. If it logs the hostname for only a few hosts, you probably have access control directives mentioning them by name. See the Require host documentation. * %l - Remote logname (from identd, if supplied). This will return a dash unless mod_ident is present and IdentityCheck is set On. * %t - * %u - Remote user if the request was authenticated. May be bogus if return status (%s) is 401 (unauthorized). В nginx proxy_set_header X-Real-IP $remote_addr; http://ras.pl.ua/zamena_modulu_mod_rpaf_v_apache_24/