Конфигурация сервера такова что фронтом стоит Nginx который прокидывает запросы на виртуалки с апачем. как следствие запрос извне выглядит с REMOTE_ADDR принадлежащим хостовой машине на которой стоит nginx
Если я пытаюсь настроить доступ по внешним адресам, то тулбар не отображается, если я привязываюсь к адресу хостовой машины - то тулбар отображается для любого человека зашедшего на сайт.
Думаю что REMOTE_ADDR необходимо использовать лишь если пусты HTTP_X_REAL_IP и HTTP_X_FORWARDED_FOR
проблема с разрешенными IP для debug
Re: проблема с разрешенными IP для debug
Копайте в сторону mod_rpaf для apache. Будет показывать реальный адрес.
Re: проблема с разрешенными IP для debug
Сдается что реализация vendor/yiisoft/yii2/web/Request.php не совсем соответствует правильной реализации
в проектах с достаточным подходом к приватности - он будет отрабатывать не верно
http://eddnet.org/?p=1553
http://stackoverflow.com/questions/3003 ... ess-in-php
в проектах с достаточным подходом к приватности - он будет отрабатывать не верно
Код: Выделить всё
/**
* Returns the user IP address.
* @return string user IP address. Null is returned if the user IP address cannot be detected.
*/
public function getUserIP()
{
return isset($_SERVER['REMOTE_ADDR']) ? $_SERVER['REMOTE_ADDR'] : null;
}
http://eddnet.org/?p=1553
http://stackoverflow.com/questions/3003 ... ess-in-php
Re: проблема с разрешенными IP для debug
дело не только в "моей" структуре сети, но и в том что люди сидят за натом и прокси и часто приходится отличать одного клиента от другогоAibolit писал(а):Копайте в сторону mod_rpaf для apache. Будет показывать реальный адрес.
- samdark
- Администратор
- Сообщения: 9489
- Зарегистрирован: 2009.04.02, 13:46
- Откуда: Воронеж
- Контактная информация:
Re: проблема с разрешенными IP для debug
HTTP_X_REAL_IP и HTTP_X_FORWARDED_FOR — это HTTP заголовки. Их кто угодно может послать какие угодно без каких-либо проблем. В том числе и 127.0.0.1. $_SERVER['REMOTE_ADDR'] — это уже TCP/IP, который без вклинивания в сеть не поменять. Тут просто вопрос безопасности. Нужен HTTP_X_FORWARDED_FOR — перекрывайте метод в Request.
Нравится Yii? Давайте сделаем его лучше!.