Форум не правильно опознает пользователя

Проблема

Пользователь А при заходе на форум видит, что система опознала его как пользователя B.

Причина

Причин по которому так может происходить несколько:

  • Если два пользователя используют один и тот же компьютер
  • Если два и более пользователей сидят под одним и тем же IP адресом (обычно локальная сеть с одним внешним IP адресом)
  • Если провайдер пользователя использует систему кеширования интернет-трафика. При этом если оба пользователя запрашивают одну и ту же страницу прокси-сервер провайдера может предоставить пользователю B страницу, которую уже получал пользователь A (тем самым B будет видеть, что он пользователь A)
  • Если хостинг провайдер использует систему кеширования для сервера на котором находится форум.
  • Если у пользователя A отключены cookies, то форум автоматически добавляет ID сессии в URL. Тем самым, если пользователь A передаст пользователю B URL с ID сессии, то система опознает пользователя B, зашедшего по данной ссылке, как пользователя A (данный вариант распространяется только на ранние версии IPB)

Решение

К сожалению, готового решения для всех случаев нет и как показывает практика решение найти можно только экспериментальным путем.

Существует ряд настроек IP.Board, позволяющих в большинстве случаев решить проблему, ниже представлен список данных настроек:

  1. Общие настройки опция Принудительно отправлять HTTP заголовки? – включение данной опции может решить проблему с кешированием страниц форума в случаях с кеширующими прокси-серверами у провайдера и/или у хостера.
  2. Безопасность и конфиденциальность опция Разрешить проверку соответствия IP-адреса для X_FORWARDED_FOR? – включение данной опции позволит форуму проверять IP-адреса для пользователей, которые выходят в сеть из локальной сети под одним общим внешним IP-адресом.
  3. Безопасность и конфиденциальность опция Проверить IP адрес пользователя при проверке сессии – включение данной опции позволит форуму при не совпадении IP адресов у вошедшего пользователя и гостя с тем же ID сессии (или с тем же набором cookies) не делать автоматический входя для гостя.
  4. Безопасность и конфиденциальность опция Проверить браузер пользователя при проверке сессии – действие опции аналогично описанной выше с той лишь разницей, что форум будет проверять еще и USER AGENT (тип и версию браузера) браузера.
  5. Безопасность и конфиденциальность опция Сбрасывать ключ авторизации пользователей при каждом входе? – включение данной опции запрещает вход на форум двух и более пользователей под одним аккаунтом. Например если пользователь А авторизовался на форуме, а потом на форум зашел пользователь B и авторизовался с теми же данными, что и пользователь A, то сессия пользователя A будет окончена и он системой будет опознаваться как гость.
  6. Оптимизация нагрузки на сервер опция Отображать HTTP заголовки без кэширования? – включение данной опции позволит форуму отправлять специальные заголовки браузеру клиента, которые будут препятствовать кешированию страниц форума браузером.

Ну и конечно же настройки для Cookies форума.

Оперируя данными настройками форума, попеременно включая или отключая некоторые из них, можно добиться решения проблемы.

 

kb/users/users_sometimes_logged_in_as_someone_else.txt · Последние изменения: 2008/02/27 16:36 root

Работает на DokuWiki
© 2002—2006 ibresource
e-mail: wikiteam@iblink.ru