Mod rpaf — различия между версиями
Admin (обсуждение | вклад) (Новая: == Установка mod_rpaf на VDS Сервер VDS64.com == Сейчас многие как фронтенд ставят на 80 порт Nginx но тогда появляетс...) |
Admin (обсуждение | вклад) (→Установка mod_rpaf на VDS Сервер VDS64.com) |
||
Строка 13: | Строка 13: | ||
И так поехали.<br> | И так поехали.<br> | ||
Идем в консоль и входим на сервер под root’oм:<br> | Идем в консоль и входим на сервер под root’oм:<br> | ||
− | |||
1. Устанавливаем пакет httpd-devel: (зачастую если установлена панель к примеру данный пакет уже стоит)<br> | 1. Устанавливаем пакет httpd-devel: (зачастую если установлена панель к примеру данный пакет уже стоит)<br> | ||
− | yum -y install httpd-devel | + | yum -y install httpd-devel |
+ | ---- | ||
+ | |||
2. Скачиваем и устанавливаем mod_rpaf:<br> | 2. Скачиваем и устанавливаем mod_rpaf:<br> | ||
Входим в директорию /usr/local/src<br> | Входим в директорию /usr/local/src<br> | ||
Строка 26: | Строка 27: | ||
cd mod_rpaf-0.6<br> | cd mod_rpaf-0.6<br> | ||
Ставим модуль в систему<br> | Ставим модуль в систему<br> | ||
− | apxs -i -c -n mod_rpaf-2.0.so mod_rpaf-2.0.c | + | apxs -i -c -n mod_rpaf-2.0.so mod_rpaf-2.0.c |
+ | ---- | ||
+ | |||
3. Далее нужно создать файл конфигурации mod_rpaf - /etc/httpd/conf.d/rpaf.conf<br> | 3. Далее нужно создать файл конфигурации mod_rpaf - /etc/httpd/conf.d/rpaf.conf<br> | ||
и добавить в него следующие строки:<br> | и добавить в него следующие строки:<br> | ||
Строка 34: | Строка 37: | ||
где xx.xx.xx.xx и yy.yy.yy.yy - IP адреса вашего сервера. Если на сервере более двух IP, добавьте их по той же аналогии. <br> | где xx.xx.xx.xx и yy.yy.yy.yy - IP адреса вашего сервера. Если на сервере более двух IP, добавьте их по той же аналогии. <br> | ||
Далее требуется перезапустить Apache, для этого выполните команду<br> | Далее требуется перезапустить Apache, для этого выполните команду<br> | ||
− | service httpd restart | + | service httpd restart |
+ | ---- | ||
+ | |||
4. В nginx внутри блока http {} должны быть указаны строки:<br> | 4. В nginx внутри блока http {} должны быть указаны строки:<br> | ||
proxy_set_header Host $host;<br> | proxy_set_header Host $host;<br> | ||
Строка 41: | Строка 46: | ||
если модифицируется nginx.conf, следует перезапустить nginx:<br> | если модифицируется nginx.conf, следует перезапустить nginx:<br> | ||
/etc/init.d/nginx stop<br> | /etc/init.d/nginx stop<br> | ||
− | /etc/init.d/nginx start | + | /etc/init.d/nginx start |
− | 5. Как проверить, работает ли установленный модуль. | + | ---- |
− | + | ||
+ | 5. Как проверить, работает ли установленный модуль.<br> | ||
На любом из доменов, которые расположены на Вашем сервере, разместите файл test.php с содержимым: | На любом из доменов, которые расположены на Вашем сервере, разместите файл test.php с содержимым: | ||
− | |||
"<? | "<? | ||
echo $_SERVER['REMOTE_ADDR']; | echo $_SERVER['REMOTE_ADDR']; | ||
− | ?>" | + | ?>"<br> |
− | + | ||
Далее зайдите по ссылке http://domain.tld/test.php, где domain.tld - имя вашего домена. Если как результат отображается IP, отличающийся от IP вашего сервера, модуль работает корректно | Далее зайдите по ссылке http://domain.tld/test.php, где domain.tld - имя вашего домена. Если как результат отображается IP, отличающийся от IP вашего сервера, модуль работает корректно | ||
---- | ---- | ||
Прислано: "Масютин Евгений" <admin [at] wishhost.net> | Прислано: "Масютин Евгений" <admin [at] wishhost.net> |
Версия 14:16, 28 сентября 2008
Установка mod_rpaf на VDS Сервер VDS64.com
Сейчас многие как фронтенд ставят на 80 порт Nginx но тогда появляется проблема, ведь Nginx передает апачу не IP пользователя посетившего ресурс а IP самого сервера. Тогда во всех логах получается айпи сервера что не есть хорошо. Решается проблема установкой модуля для Apache 2.*** mod_rpaf
Данный метод использован на сервере:
ОС:CentOS 5
Apache 2.2.3
Nginx 0.5
ISPManager Lite
И так поехали.
Идем в консоль и входим на сервер под root’oм:
1. Устанавливаем пакет httpd-devel: (зачастую если установлена панель к примеру данный пакет уже стоит)
yum -y install httpd-devel
2. Скачиваем и устанавливаем mod_rpaf:
Входим в директорию /usr/local/src
cd /usr/local/src
Загружаем в /usr/local/src файл mod_rpaf-0.6.tar.gz
wget http://stderr.net/apache/rpaf/download/mod_rpaf-0.6.tar.gz
Распаковываем 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 адреса вашего сервера. Если на сервере более двух IP, добавьте их по той же аналогии.
Далее требуется перезапустить Apache, для этого выполните команду
service httpd restart
4. В nginx внутри блока http {} должны быть указаны строки:
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
(снова обращаю внимание, у меня стоит ISPManager и ставил я nginx силами панели потому данные строки уже есть в конфиге потому у кого есть лишнее не дописываем)
если модифицируется nginx.conf, следует перезапустить nginx:
/etc/init.d/nginx stop
/etc/init.d/nginx start
5. Как проверить, работает ли установленный модуль.
На любом из доменов, которые расположены на Вашем сервере, разместите файл test.php с содержимым:
"<?
echo $_SERVER['REMOTE_ADDR'];
?>"
Далее зайдите по ссылке http://domain.tld/test.php, где domain.tld - имя вашего домена. Если как результат отображается IP, отличающийся от IP вашего сервера, модуль работает корректно
Прислано: "Масютин Евгений" <admin [at] wishhost.net>