Хочу спросить, после того как я перенес свой сайт с обычного хостинга на VPS ip-адреса в админке стали отображаться такими как фактический ip-адрес сервера на котором лежит сайт. Т.е. теперь например забанить по ip нет возможности и вообще увидеть с какого айпишника заходит юзер. Это видно как в списке пользователесь, так и например в списке комментариев. которые пишут пользователи у всех у ни написан один и тот ip-адрес он айпишник сервера.
Может кто подскажет куда копать, что бы решить это проблему?
За ранее спасибо.
Странный у Вас хостер, у меня такое не наблюдается.
Здравствуйте,
Хочу спросить, после того как я перенес свой сайт с обычного хостинга на VPS ip-адреса в админке стали отображаться такими как фактический ip-адрес сервера на котором лежит сайт. Т.е. теперь например забанить по ip нет возможности и вообще увидеть с какого айпишника заходит юзер. Это видно как в списке пользователесь, так и например в списке комментариев. которые пишут пользователи у всех у ни написан один и тот ip-адрес он айпишник сервера.
Может кто подскажет куда копать, что бы решить это проблему?
За ранее спасибо.
Напишите хостеру, опишите проблему, он знает что делать.
Попробую написать.., но у рег.ру поддержка никакая… Они скорее предложат перейти на тариф по дороже или воспользоваться услугами специалиста по цене 500р за пол часа. :), чем по могут с решением проблемы…
У reg ru, если мне не изменяет мапять, free bsd 8 х86.
У них это не только на freebsdЕще данная трабла наблюдается при не корректно настроенном или не установленном модуле апача rpaf в связке nginx прокси к apache.
У reg ru, если мне не изменяет мапять, free bsd 8 х86 .
Вообще Рег не рекомендую, умеют общаться, а вот железо и прочее никакое.
При желании кстати легко гуглится.
Данный метод использован на сервере:
ОС: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 stderr.net/apache/rpaf/static/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']; ?>"
Далее зайдите по ссылке domain.tld/test.php, где domain.tld — имя вашего домена. Если как результат отображается IP, отличающийся от IP вашего сервера, модуль работает корректно
или как вариант изменить механизм получения IP пользователя, на более корректный в самом instant.
Какой файл и какие строки отвечают за это, если копать в самой CMS?
Какой файл и какие строки отвечают за это, если копать в самой CMS?
Там не сделаешь. Сервер будет отдавать свой IP.
Какой файл и какие строки отвечают за это, если копать в самой CMS?
единственный правильный вариант получения ip адреса пользователя это $_SERVER['REMOTE_ADDR'], который и используется в InstantCMS. Все остальное от лукавого.ли как вариант изменить механизм получения IP пользователя, на более корректный в самом instant.
GoodNet, вам letsgo, Reborn подсказали единственный и правильный вариант решения проблемы.
maxisoft, вероятно, имел ввиду проверку всяких штук типа X-Forwarded-for для определения IP за прокси. Но к данной теме это отношения не имеет, да и эффективность последнее время весьма сомнительна.единственный правильный вариант получения ip адреса пользователя это $_SERVER['REMOTE_ADDR'], который и используется в InstantCMS. Все остальное от лукавого.
Что делать?