Установка mod_rpaf

nginx-apache

При работе связки nginx+apache, запросы на back end (apache) приходит с IP адреса, на котором расположен nginx, а не с IP пользователя, с которого на самом деле пришёл запрос.

Это создаёт определённые неудобства при работе систем критичных к «правильному» определению ip адресов, таких как: системы авторизации, форумы, блоги и т.д.

Чтобы исправить этот недочет рекомендуется установить расширение для httpd — mod_rpaf:

wget http://www.stderr.net/apache/rpaf/download/mod_rpaf-0.6.tar.gz

tar -xzvf mod_rpaf-0.6.tar.gz

cd mod_rpaf-0.6
  • Для дальнейшей работы нам понадобиться apache утилита «apxs» и компилятор «gcc»
# yum install httpd-devel
# yum install gcc
  • Согласно мануалу разворачиваем расширение mod_rpaf:
 
# apxs -i -c -n mod_rpaf-2.0.so mod_rpaf-2.0.c
  • Если все прошло успешно, то прописываем в httpd.conf, сразу за последним «LoadModule»
LoadModule rpaf_module modules/mod_rpaf-2.0.so

RPAFenable On
RPAFproxy_ips 127.0.0.1 ваш_другой_ip_адрес
RPAFheader X-Real-IP
RPAFsethostname On
  • На front end, в настройках необходимого хоста, прописываем уже несколько иные строки.

proxy_pass — это ваш адрес apache сервера.

        proxy_pass http://127.0.0.1:8080;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_intercept_errors off;
        proxy_set_header Range "";
        proxy_read_timeout 120s;
Вы можете оставить комментарий ниже.