При реализации указанной связки необходимо проследить что модули в httpd.conf указаны в следующем порядке:
LoadModule geoip_module libexec/apache/mod_geoip.so
LoadModule rpaf_module libexec/apache/mod_rpaf.so
В обратной последовательности загрузки модулей стабильно не работает при любых заголовках и тд.
Apache
Apache, GeoIP, mod_rpaf
Если вы используете такую связку, и в nginx присуствуют следующие директивы
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $remote_addr;
чтобы пробросить ip пользователя к apache, то некоторые скрипты, работающие под apache из-за заголовка X-Forwarded-For могут считать, что пользователь пришел через прокси. А это не желательно. В таком случае в nginx те два заголовка надо заменить на:
proxy_set_header Test $remote_addr;
а в конфиге mod_rpaf сделать так:
RPAFenable On
RPAFsethostname On
RPAFproxy_ips 127.0.0.1 внешние ип-ы
RPAFheader Test
Apache, nginx
Apache, mod_rpaf, nginx
1. Устанавливаем пакет httpd-devel:
yum -y install httpd-devel
2. Скачиваем и устанавливаем mod_rpaf:
cd /usr/local/src
wget http://stderr.net/apache/rpaf/download/mod_rpaf-0.6.tar.gz
tar xzf mod_rpaf-0.6.tar.gz
cd mod_rpaf-0.6
apxs -i -c -n mod_rpaf-2.0.so mod_rpaf-2.0.c
3. Далее нужно создать файл конфигурации mod_rpaf – /etc/httpd/conf.d/rpaf.conf
и добавить в него следующие строки:
LoadModule rpaf_module modules/mod_rpaf-2.0.so
RPAFenable On
RPAFproxy_ips 127.0.0.1 xx.xx.xx.xx yy.yy.yy.yy
где xx.xx.xx.xx и yy.yy.yy.yy – IP адреса вашего сервера.
Apache, linux
httpd, mod_rpaf